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

装死的蛇 2013-09-02 09:58:59

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 <br/>', $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天了....谢谢了
...全文
180 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
装死的蛇 2013-09-04
  • 打赏
  • 举报
回复
可能是自己机器某些地方的配置有问题, 最后决定启用PDO了, 反正早晚都需要学习新知识 而且PDO确实要比MySQli 要好, 这个问题就算解决了吧 PDO用熟练了很方便, 而且PDO的prepare 就没有上面的问题, 应该是自己配置的问题
一起混吧 2013-09-02
  • 打赏
  • 举报
回复
什么输出都没有?先确认进入if了没有?
xuzuning 2013-09-02
  • 打赏
  • 举报
回复
代码看上去没有问题 但如果直接复制你的代码就无法通过语法检查
阿非 2013-09-02
  • 打赏
  • 举报
回复
settype($seach_id, "integer"); 可以省略
阿非 2013-09-02
  • 打赏
  • 举报
回复

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧