请大家帮忙分析下原因,不能修改SQL中字段内容 1sxsjly20140108n00001/查询错误提示: 上面这个是运行后的输出结果,谢谢. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 把$order_id打印一下 看是什么样子的 直接输出sql,放在编辑器执行,看是否报错,就知道你修改字段=1是否成功。 echo "$order_id[$i]";得到 sxsjly20140108n00001/ 这个值是正确的吗?检查修改是否进行了,要观察 mysql_affected_rows 的返回值 直接输出 order_id[$i],这个就是 sxsjly20140108n00001 ,是正确的,如果把条件中变量变成这个最终值,就可以修改成功SQL直接放到命令行数据库中执行也没有问题,输出的最前面是 1 ,就是$result 这个的结果,应该也是正确的,但是为何就是不能修改成功相应字段内容呢? $sqlpop = "update tbl_case set order_state = '1' where order_id = '$order_id[$i]'"; $result = mysql_query($sqlpop); $rc = mysql_affected_rows(); echo "$rc"; echo "$order_id[$i]"; echo "查询错误提示:".mysql_error();观察 mysql_affected_rows 的返回值这个结果是 0 ,应该是没有执行成功query结果是成功的,说明把命令送到MY SQL中了,为何不能正确执行?如果是1的话,结果就对了,能分析出为何没有在sql中执行这个么?是变量那块写法有问题? $sqlpop = "update tbl_case set order_state = '1' where order_id = '$order_id[$i]'";打印sql瞧瞧呗。 update tbl_case set order_state = '1' where order_id = 'sxsjly20140108n00001/'0sxsjly20140108n00001/查询错误提示: 这个是打印的sqlpop我估计是不是条件里这个 / 符号的问题???如何解决呢?这个是从一个PHP文档的echo输出的chekbox结果 echo "<td align='center'><input type='checkbox' name=order_num[] value=$row[order_id]/>$row[order_id]</td>";然后在查询输出的结果中,通过选择框选择一个记录,同时把order_id作为条件,进行上面的UPDATE,进行修改一个状态,由0更改为1 $sqlpop = 'update tbl_case set order_state = "1" where order_id = "'.addslashes($order_id[$i]).'"'; 是的,多了一个 / $sqlpop = "update tbl_case set order_state = '1' where order_id = '$order_id[$i]'";echo $sqlpop;看看输出的是什么进而 print_r($_POST["order_num"]);看看又是些什么 这个参数是在服务器端查询出来的 客户端提交的编号是另一个PHP文件 $order_id=$_POST["order_num"]; 明顯是post過來的。 响应版主号召,发点入门教学文章 - 简单说下redis主从复制过程以及我发现的一个导致我线上业务出bug的不起眼特性 为什么很多人说php不适合开发大型网站但很多大型网站用php开发? decimal的读取办法 关开论坛开发价格 外包 怎样定期执行PHP和MySQL查询语句。 求问各种正则表达式后缀的意义 我想在linux下配置php环境,请帮忙推荐软件的版本 【急!!!】如何查看网站是否有外网站的盗链? 关闭浏览器后。。。 怎么Session用不了? 用php 导入excel 到mysql 数据库数据重复的问题 关于一个php后台管理多台服务器前台
得到 sxsjly20140108n00001/
这个值是正确的吗?检查修改是否进行了,要观察 mysql_affected_rows 的返回值
如果把条件中变量变成这个最终值,就可以修改成功
SQL直接放到命令行数据库中执行也没有问题,
输出的最前面是 1 ,就是$result 这个的结果,应该也是正确的,但是为何就是不能修改成功相应字段内容呢?
$result = mysql_query($sqlpop);
$rc = mysql_affected_rows();
echo "$rc";
echo "$order_id[$i]";
echo "查询错误提示:".mysql_error();
观察 mysql_affected_rows 的返回值
这个结果是 0 ,应该是没有执行成功
query结果是成功的,说明把命令送到MY SQL中了,为何不能正确执行?
如果是1的话,结果就对了,
能分析出为何没有在sql中执行这个么?
是变量那块写法有问题?
打印sql瞧瞧呗。
这个是打印的sqlpop
我估计是不是条件里这个 / 符号的问题???
如何解决呢?这个是从一个PHP文档的echo输出的chekbox结果
echo "<td align='center'><input type='checkbox' name=order_num[] value=$row[order_id]/>$row[order_id]</td>";
然后在查询输出的结果中,通过选择框选择一个记录,同时把order_id作为条件,进行上面的UPDATE,进行修改一个状态,由0更改为1
$sqlpop = "update tbl_case set order_state = '1' where order_id = '$order_id[$i]'";
echo $sqlpop;
看看输出的是什么进而 print_r($_POST["order_num"]);
看看又是些什么
客户端提交的编号是另一个PHP文件