Home >Backend Development >PHP Tutorial >php页面的sql语句执行成功,数据库不更新
我做一个关于投票的页面,数据库连接成功了,下面是执行sql的方法,查询不报错,返回2,但是数据库数据不更新
但是在phpmyadmin执行sql成功也能更新数据
$sql="update vote set num=num+1 where name='布什' ";
public function execute_dml($sql){ $b=mysql_query($sql,$this->conn) or die("执行失败!".mysql_error()); if(!$b){ return 0;//执行失败 }else{ if(mysql_affected_rows($this->conn)>0){ return 1;//表示执行ok }else{ return 2;//表示没有行受到影响 } } }
如果不是其他的问题,那就可能是编码的问题。比如‘布什’ 这个在页面中是UTF-8的编码而数据库中是GBK的。
建议使用主键查询,还能保证唯一性。
编码问题吧,你的表是什么编码,有没有执行set names utf8 语句。
如果不是其他的问题,那就可能是编码的问题。比如‘布什’ 这个在页面中是UTF-8的编码而数据库中是GBK的。
建议使用主键查询,还能保证唯一性。