可能是错误的语法?

时间:2014-08-05 08:30:56

标签: php

我试图通过运行 .php 文件将一些字段插入到数据库中,但没有成功。

这可能是错误的语法,但因为我是PHP的业余爱好者,不太确定。

你能帮助我纠正我的错误吗?

mysql_query("DELETE FROM deleteme");似乎工作正常,

mysql_query("INSERT INTO 'addme'不是!

<?php  
$con = mysql_connect("localhost", "localdb", "pass") or  
    die("Could not connect: " . mysql_error());  
mysql_select_db("localdb");  

mysql_query("DELETE FROM deleteme");
mysql_query("INSERT INTO 'addme' ('id', 'roleid', 'username', 'password', 'authmodule', 'authdata', 'firstname', 'lastname', 'email', 'signature', 'notes', 'template', 'language', 'loginattempts', 'supportdepts', 'ticketnotifications', 'homewidgets') VALUES
(3, 1, 'admin', 'af3c9', '', '', 'Admin', 'Administration', 'admin@email.com', '', '', 'typical', 'english', 0, '1,2,4', '', '')");

mysql_close($con);  
?>

也试过这个,没有运气:

<?php  
$con = mysql_connect("localhost", "localdb", "pass") or  
    die("Could not connect: " . mysql_error());  
mysql_select_db("localdb");  

mysql_query("DELETE FROM deleteme");
mysql_query("INSERT INTO `addme` (`id`, `roleid`, `username`, `password`, `authmodule`, `authdata`, `firstname`, `lastname`, `email`, `signature`, `notes`, `template`, `language`, `loginattempts`, `supportdepts`, `ticketnotifications`, `homewidgets`) VALUES
(3, 1, 'admin', 'af3c9', '', '', 'Admin', 'Administration', 'admin@email.com', '', '', 'typical', 'english', 0, '1,2,4', '', '')");

mysql_close($con);  
?>

2 个答案:

答案 0 :(得分:2)

表和列名称应该用反引号括起来,而不是引号。

mysql_query("INSERT INTO `addme` (`id`, `roleid`, `username`, `password`, `authmodule`, `authdata`, `firstname`, `lastname`, `email`, `signature`, `notes`, `template`, `language`, `loginattempts`, `supportdepts`, `ticketnotifications`, `homewidgets`) VALUES
(3, 1, 'admin', 'af3c9', '', '', 'Admin', 'Administration', 'admin@email.com', '', '', 'typical', 'english', 0, '1,2,4', '', '')");

答案 1 :(得分:2)

使用反引号`intsead of quotes&#39;

INSERT INTO `addme` (`id`,....

Back ticks`将用于表和列标识符,但仅在标识符为MySQL reserved keyword时才需要

有关详细信息,请参阅when-to-use-single-quotes-double-quotes-and-backticks

如果您想知道Backticks在键盘上的位置,请参阅此处how-do-i-type-the-tick-and-backtick-characters-on-windows

旁注不要使用mysql_ *功能。 WHY?