Php 您的SQL语法有错误;检查与MySQL服务器版本对应的手册,了解正确的语法
正在从文本框成功获取srnoPhp 您的SQL语法有错误;检查与MySQL服务器版本对应的手册,了解正确的语法,php,mysql,sql-update,syntax-error,mysql-error-1064,Php,Mysql,Sql Update,Syntax Error,Mysql Error 1064,正在从文本框成功获取srno <?php $srno = $_POST['srno']; mysql_connect("localhost","root",""); mysql_select_db("visit"); $sql ="UPDATE visitor SET Exit='".$ab."' WHERE srno=$srno"; mysql_query($sql) or die ("Error: ".mysql_error()); ?
<?php
$srno = $_POST['srno'];
mysql_connect("localhost","root","");
mysql_select_db("visit");
$sql ="UPDATE visitor SET Exit='".$ab."' WHERE srno=$srno";
mysql_query($sql) or die ("Error: ".mysql_error());
?>
如果$srno
是一个字符串,则它周围缺少引号
$ab
未定义
。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果您选择PDO
您也对
为了进一步说明,exit
是MySQL保留字:
将其重命名为其他名称,或将其用反勾号括起来:
$sql ="UPDATE visitor SET `Exit`='".$ab."' WHERE srno=$srno";
^ ^ backticks
或者(如果如John在回答中所述,$srno
是一个字符串)
您在mysql\u query()
上使用了mysql\u error()
,这应该表明语法错误,您在问题中没有完全分享到这一点,只是作为问题的标题,它没有向我们显示完整的错误消息,但是我确信这是一种影响
“退出…”附近的正确语法的MySQL服务器版本
添加到文件顶部,这将在生产测试期间有所帮助
error_reporting(E_ALL);
ini_set('display_errors', 1);
这将发出一个未定义变量的信号…
警告$ab
您没有$ab的值。您在查询中使用的$srno,是字符串还是数字/整数???$ab是一个我能够成功获取的日期,$srno是一个整数Hanks Fred正是在backticks的帮助下,查询才得以实现executed@GauravGupta如果成功的话,你应该接受他的回答。别忘了检查链接。这是他在回答中给出的
error_reporting(E_ALL);
ini_set('display_errors', 1);