2013-12-08 214 views
0

我試圖插入一個表並獲取新行的ID。mysql-php INSERT INTO不能正常工作

$mysqli = new mysqli("localhost", "dbuser", "dbpass", "dbname"); 

/* check connection */ 
if (mysqli_connect_errno()) { 
    printf("Connect failed: %s\n", mysqli_connect_error()); 
    exit(); 
} 

$query = "INSERT INTO table (tbl1,tbl2,tbl3,tbl4,tbl5) VALUES ('".$tbll."','".$tbl2."','".$tbl3."','0.00','".$tbl5."'"; 
$mysqli->query($query); 
$id_log = $mysqli->insert_id; 
  • id_log在日誌
  • 在同一個文件我在做什麼SELECT & UPDATE返回0,沒有錯誤的任何地方和所有工作完全
+2

在''''末尾的VALUES上加上括號。 – Rolice

+1

@Rolice,不是'bracket' ..括號;) –

+0

作爲一個方面說明,您使用的是mysqli,但沒有準備好語句。因此,您仍然對SQL注入開放,因爲您直接插入php變量。當然,你可以在代碼中做你沒有包括的東西,但如果這是你所有的MySQL代碼,你應該開始使用預準備語句和參數化查詢。 – jpodwys

回答

3

你錯過了一個括號這裏...

$query = "INSERT INTO table (tbl1,tbl2,tbl3,tbl4,tbl5) VALUES ('".$tbll."','".$tbl2."','".$tbl3."','0.00','".$tbl5."')"; 
                  ----------------------------------------------------------^