欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

数据库服务

程序员文章站 2022-05-04 13:37:32
...
alert('?修改成功');window.location.href='index.php'";			//修改成功	}	else{	echo '';		echo "";		//修改失败	}}?>

这个是网页代码

用户信息修改
用户名:
原密码:
新密码:
确认密码:
部门:
真实姓名:


问题是最后就算我原密码是输入错误的提示也是修改成功跳转到了index.php页面 但是数据库没修改 原密码正确就一切正常


回复讨论(解决方案)

if($insert){//判断是否执行
这个判断是错误的
你只是检查了 update 命令是否有错,并没有检查到修改是否成功
mysql_affected_rows() 大于 0 才表示修改成功

没有认真看手册吧。
http://www.w3school.com.cn/php/func_mysql_query.asp

返回值

mysql_query() 仅对 SELECT,SHOW,EXPLAIN 或 DESCRIBE 语句返回一个资源标识符,如果查询执行不正确则返回 FALSE。

对于其它类型的 SQL 语句,mysql_query() 在执行成功时返回 TRUE,出错时返回 FALSE。

非 FALSE 的返回值意味着查询是合法的并能够被服务器执行。这并不说明任何有关影响到的或返回的行数。很有可能一条查询执行成功了但并未影响到或并未返回任何行。



检查是否影响到了行数,应该用mysql_affected_rows()函数来检查检测。
相关标签: 数据库服务