日期:2014-05-16  浏览次数:20391 次

php执行mysql语句问题
$id=1; 这个是确定没问题

这个执行就错误
$sql="update admin set pass='$pass1' where id=$id;";
$mysql=new MysqlHelper();
$count=$mysql->query($sql);
$mysql.close();


You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1



这个执行就正确
$sql="update admin set pass='$pass1' where id=1;";‘
$mysql=new MysqlHelper();
$count=$mysql->query($sql);
$mysql.close();

------解决方案--------------------
打印出 $sql 就知道了
------解决方案--------------------
引用:
$id=1; 这个是确定没问题

这个执行就错误
$sql="update admin set pass='$pass1' where id=$id;";
$mysql=new MysqlHelper();
$count=$mysql->query($sql);
$mysql.close();



You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1



这个执行就正确
$sql="update admin set pass='$pass1' where id=1;";‘
$mysql=new MysqlHelper();
$count=$mysql->query($sql);
$mysql.close();

红色部分有个分号
------解决方案--------------------
$sql="update admin set pass='".$pass1."' where id=$id;"; 改成这个试试
------解决方案--------------------
2L正解 不需要加分号   版大说的是解决此类问题的共通办法:查询遇到问题 先打印出sql语句检查一下 十有八九就明白了./
------解决方案--------------------

<?php
$pass1="123";
$id=1;
     $sql="update admin set pass='".$pass1."' where id=$id;";
echo $sql;
?>

测试了下,还真是这个问题
------解决方案--------------------
$sql="update admin set pass='".$pass1."' where id=".$id;