2012-07-04 85 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