php页面的sql语句执行成功,数据库不更新

原创
2016-06-23 13:57:20 1152浏览

我做一个关于投票的页面,数据库连接成功了,下面是执行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的。
建议使用主键查询,还能保证唯一性。


真的主键 查询 成功了 哈哈 。 谢谢了 。哎, mysql数据库没怎么学,很多都不懂

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。