2016-06-11 156 views
0

我嘗試編寫get-methods以將數據插入表中。其實,一張桌子一切順利。看看代碼:php mysql不插入數據

<?php 
error_reporting(E_ALL & ~E_DEPRECATED); 

$db_host = "..."; 
$db_user = "..."; 
$db_password = "..."; 
$db_table = "Task"; 

$name = $_GET['Name']; 
$groupId = $_GET['GroupId']; 
$creatorId = $_GET['CreatorId']; 
$comment = $_GET['Comment']; 

$db = mysql_connect($db_host, $db_user, $db_password) OR DIE("DB connection fail..."); 
mysql_select_db("...", $db); 
mysql_query("SET NAMES 'utf8'", $db); 

$result = mysql_query ("INSERT INTO ".$db_table." (Name, Group_ID, Creator_ID, Comment) VALUES ('$name', '$groupId', '$creatorId', '$comment')"); 
$id = mysql_insert_id(); 

header('Content-Type: application/json'); 


if ($result = 'true'){ 
    $response = array('result' => 'OK', 'id' => $id); 
    //setcookie("TaskManagerUser", $id); 
    echo json_encode($response); 
} else{ 
    $response = array('result' => 'FAIL'); 
    echo json_encode($response); 
} 
?> 

但是當我嘗試插入到另一個表「組」,沒有任何反應。 id在mysql_insert_id()中始終爲0;兩個表中 主鍵是AU和獨特

<?php 
error_reporting(E_ALL & ~E_DEPRECATED); 

$db_host = "..."; 
$db_user = "..."; 
$db_password = "..."; 
$db_table = "Group"; 

$name = $_GET['Name']; 

$db = mysql_connect($db_host, $db_user, $db_password) OR DIE("DB connection fail..."); 
mysql_select_db("...", $db); 
mysql_query("SET NAMES 'utf8'", $db); 

$result = mysql_query("INSERT INTO ".$db_table." (Name) VALUES ('$name')"); 

$id = mysql_insert_id(); 

header('Content-Type: application/json'); 

if ($result = 'true'){ 
    $response = array('result' => 'OK', 'id' => $id); 
    //setcookie("TaskManagerUser", $id); 
    echo json_encode($response); 
} else{ 
    $response = array('result' => 'FAIL'); 
    echo json_encode($response); 
} 
?>  

回答

0

對於那些,誰決定創建一個表名「集團」 - 不要這樣做!這是關鍵。我改了它的名字,它的工作!

+0

你也可以把名字反引號。這就是你如何使用與保留字相同的名稱。 – Barmar