$query="INSERT INTO ".$table_name." VALUES ('$rowNum','$something',$_SERVER['REQUEST_TIME'], $_SERVER['REQUEST_TIME'], '$somethingelse')";
产生的错误是
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in line 15
我的查询有问题,但我不知道错误在哪里。任何人都能看到光线,请把它洒在我身上。谢谢你的光临。
编辑: 创建我的表的查询是
$query="CREATE TABLE ".$table_name." (id int not null auto_increment, something varchar(128), post_date varchar(32), edit_date varchar(32), somethingelse text)";
答案 0 :(得分:1)
我发现这种语法更易于管理和调试,除了最基本的参数替换为字符串之外:
$query = sprintf("INSERT INTO %s VALUES ('%s', '%s', '%s', '%s', '%s');", $table_name,
$rowNum, $something, $_SERVER['REQUEST_TIME'], $_SERVER['REQUEST_TIME'],
$somethingelse)
N.B。您也可以使用printf代替具有相同结构的sprintf来输出相同的字符串,就像print或echo语句一样。
其他一些建议:
答案 1 :(得分:0)
你试过吗
$query="INSERT INTO ".$table_name." VALUES ('$rowNum','$something',".$_SERVER['REQUEST_TIME'].",". $_SERVER['REQUEST_TIME']", '$somethingelse')";
编辑 - 问题出现在$_SERVER['REQUEST_TIME']
,而PHP没有将其解释为$sometext
,所以你必须将它连接起来
答案 2 :(得分:0)
尝试:
$query="INSERT INTO ".$table_name." VALUES ('$rowNum','$something','".$_SERVER['REQUEST_TIME']."','". $_SERVER['REQUEST_TIME']."', '$somethingelse')";
数组值不应该是单引号或双引号。