加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 数据库 > MySql > 正文

php – prepare()vs query()mysqli

发布时间:2020-05-22 21:08:36 所属栏目:MySql 来源:互联网
导读:我试图理解mysqli的query()和prepare()之间的区别.我有类似下面的代码,我想从两者得到相同的结果.但是,prepare()不能按预期工作.为什么? // this works if ($query = $this-db-query(SELECT html FROM static_pages WHERE page =

我试图理解mysqli的query()和prepare()之间的区别.我有类似下面的代码,我想从两者得到相同的结果.但是,prepare()不能按预期工作.为什么?

  // this works

  if ($query = $this->db->query("SELECT html FROM static_pages WHERE page = 'cities'")) {

     $result = $query->fetch_row();
     echo $result[0];

  $query->close();

  }

  //this does not work
  //result is empty

     $cities = 'cities';

     $stmt = $this->db->prepare("SELECT html FROM static_pages WHERE page = ?");
     $stmt -> bind_param("s",$cities);
     $stmt->execute();
     $stmt->bind_result($result);
     $stmt->fetch();
     echo $result;
     $stmt->close();

     $this->db->close();

这些是我的服务器配置按要求:

OS

Vista 64bit / PHP版本5.2.9

mysqli的

启用了MysqlI支持

客户端API库版本5.0.51a

客户端API标头版本5.0.51a

MYSQLI_SOCKET /tmp/mysql.sock

指令本地价值主值

mysqli.default_host没有值没有值

mysqli.default_port 3306 3306

mysqli.default_pw没有值没有值

mysqli.default_socket没有值没有值

mysqli.default_user没有值没有值

mysqli.max_links无限无限

mysqli.reconnect关闭

最佳答案 你能试试$stmt-> store_result(); $stmt-> execute();之间和$stmt-> bind_result($result); ?

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读