2012-07-04 130 views
1

我想寫一個簡單的INSERT語句來添加新的用戶到數據庫,它不工作,這意味着,我想要插入到表中的數據都不會插入。我一直試圖解決這個問題幾個小時,但沒有成功。我試圖編寫插入語句如下,它們看起來對我很正確,所以我很難排除故障。插入語句中的所有列都存在於我的表中,並且按照確切的順序排列。我很感激,如果有人可以建議可能是什麼問題。插入語句不能插入似乎無法找到問題

我的連接

//Create mysql connect variable 
$conn = mysql_connect('1122334455.host.com', 'john', 'password'); 

//kill connection if error occurs 
if(!$conn){ 

    die('Error: Unable to connect.' . '<br>' . mysql_error()); 
} 
//connect to mysql database 
mysql_select_db("jefffffff89", $conn); 

,我到目前爲止已經試過的INSERT語句:

嘗試1:

mysql_query("INSERT INTO users (id, email, company-name, city, state, phone, password, first, last) 
      VALUES('','[email protected]','johnnys inc','main','NY','443-333-3444','1234567','matt','williams')",$conn); 

嘗試2:

$query = "INSERT INTO users (id, email, company-name, city, state, phone, password, first, last) 
       VALUES('','[email protected]','johnnys inc','main','NY','443-333-3444','1234567','matt','williams')"; 
     mysql_query($query,$conn); 

我能輕鬆添加下表記錄如下,它工作得很好(所以,我遵循同樣的邏輯上面插入,但並不成功插入):

mysql_query("INSERT INTO log (log_id, txn_id, email) VALUES('','hello','world')", $conn);  
+1

定義「沒有成功」;它返回一個錯誤?它不插入一行?它插入一行包含錯誤的數據?你的機器崩潰了? –

+0

它在標題中的權利:「插入語句不插入」我認爲它顯然不插入到表中,但我想我必須指定......請參閱編輯的文章。 「在插入數據庫失敗後,我的電腦着火了,請幫忙。」 ;) – AnchovyLegend

回答

1

一列名包含一個連字符:

mysql_query("INSERT INTO users (id, email, company-name, city, ..."); 

假設這是故意的,你需要使用反引號進行轉義:

mysql_query("INSERT INTO users (id, email, `company-name`, city, ..."); 
#          ^  ^

但是它會更好地改變你的列有不包含hyphe名稱ñ。

+0

感謝您的回覆。這不是問題,我改變了這些數據的安全性,並意外刪除了該報價:)連接實際上是好的。 – AnchovyLegend

+0

@MHZ:查看更新後的答案。 –

+0

不知道這是一個問題:)這個伎倆!感謝您的幫助,謝謝! (gr,即時消除連字符!) – AnchovyLegend