php fetch为空,php 预编译查询始终fetch不到数据

php prepare fetch include ('../db/MySqlConnect.php');$conn = new MySqlConnect();$mysqli = $conn->getConnection();$sql = 'select id, username, password from admin where id = ?';$seach_id = 1;settype($seach_id, "integer");if($stmt = $mysqli->prepare($sql)) {$stmt->bind_param('i', $seach_id);$stmt->execute();$stmt->bind_result($rs_id, $rs_name, $rs_password);if($stmt->fetch() == NULL) {echo 'no result';} else { printf('id:%s, name:%s, password:%s

', $rs_id, $rs_name, $rs_password);}$stmt->close();$mysqli->close();}

SQL语句明明可以查询出来数据, 我使用PHP的非预编译语句($result = $mysqli->query($query);)也可以查询出来记录, 就是上面的查询代码始终在fetch出抓取不到数据,我的PHP版本是php-5.2.5-x64, 环境是64位的Win7, 有遇到过的朋友或知道的能给分析一下么, 我已经困扰2天了....谢谢了

回复讨论(解决方案)

代码看上去没有问题

但如果直接复制你的代码就无法通过语法检查

http://www.php.net/manual/en/mysqli.prepare.php

http://xiaobo-liu.iteye.com/blog/1288008

settype($seach_id, "integer");

可以省略

什么输出都没有?先确认进入if了没有?

可能是自己机器某些地方的配置有问题, 最后决定启用PDO了, 反正早晚都需要学习新知识

而且PDO确实要比MySQli 要好, 这个问题就算解决了吧

PDO用熟练了很方便, 而且PDO的prepare 就没有上面的问题, 应该是自己配置的问题

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值