应用MYSQLI读取数据库读不了问题
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了应用MYSQLI读取数据库读不了问题,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4267字,纯文字阅读大概需要7分钟。
内容图文
![应用MYSQLI读取数据库读不了问题](/upload/InfoBanner/zyjiaocheng/201/de456eaaf36a474e87b91119bc082ecd.jpg)
host = $host; if ($user != "") $this -> user = $user; if ($pass != "") $this -> pass = $pass; if ($database != "") $this -> database = $database; if (!$this -> conn = @mysqli_connect($this -> host, $this -> user, $this -> pass)) { return $this -> output("连接数据库 '".$this -> host."' 失败。".mysqli_error($this -> conn)); } mysqli_query($this -> conn,"SET NAMES 'utf8'"); $this -> selectdb(); }function selectdb($database="") { if ($database != "" && $database != $this -> database) $this -> database = $database; if (!mysqli_select_db($this -> conn, $this -> database)) { return $this -> output("无法使用数据库 '".$this -> database."'。"); } }function query($sql="", $database="") //$sql { if ($sql != "") $this -> sql = $sql; if ($database != "" && $database != $this -> database) { $olddb = $this -> database; $this -> selectdb($database); } $this -> result = @mysqli_query($this -> conn,$this -> sql); if (mysqli_error($this -> conn) != "") { return $this -> output("执行以下SQL语句时失败:'".$this -> sql."'
".mysqli_error($this -> conn)); } $this -> n = @mysqli_affected_rows($this -> conn); if (!empty($olddb)) $this -> selectdb($olddb); return $this -> result; }function get_data() { /* if(!$this -> result || !preg_match("/^Resource/i", $this -> result)){ */ if(!$this -> result || !is_resource($this->result)){ return $this->output("没有数据,请先执行SQL的'select'语句!"); } $count=0; $this -> m = @mysqli_num_rows($this -> result); if ($this -> m > 0) { while ($row = mysqli_fetch_array($this -> result)) { $data[$count] = $row; $count++; } return $this->result=$data; } else { return $this -> output("数据为空!"); } mysqli_free_result($this -> result); }function output($msg){ $this->err=$msg; if ($this->debug)echo $msg; return false;} }?>////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////"; echo "
"; } $sql = "SELECT * FROM t6_dept where de_id>'0' ORDER BY de_id ASC"; $db -> query($sql); $result = $db -> get_data(); if(!$result) { echo "取出数据失败result 0"; echo "
"; echo "
"; }echo $result[0]["de_name"]; //无法显示数据print_r($db);?>
最后输出不了数据$resul没有值 t浏览器显示结果:求哪里出错了 ???
链接数据库 1
取出数据失败result 0
mysqldb Object ( [host] => localhost [user] => root [pass] => 1234 [database] => t6_db_hp [conn] => mysqli Object ( [affected_rows] => 4 [client_info] => mysqlnd 5.0.11-dev - 20120503 - $Id: f373ea5dd5538761406a8022a4b8a374418b240e $ [client_version] => 50011 [connect_errno] => 0 [connect_error] => [errno] => 0 [error] => [error_list] => Array ( ) [field_count] => 4 [host_info] => localhost via TCP/IP [info] => [insert_id] => 0 [server_info] => 5.6.20 [server_version] => 50620 [stat] => Uptime: 22428 Threads: 1 Questions: 5 Slow queries: 0 Opens: 68 Flush tables: 1 Open tables: 61 Queries per second avg: 0.000 [sqlstate] => 00000 [protocol_version] => 10 [thread_id] => 1 [warning_count] => 0 ) [sql] => SELECT * FROM t6_dept where de_id>'0' ORDER BY de_id ASC [n] => 4 [m] => 0 [result] => mysqli_result Object ( [current_field] => 0 [field_count] => 4 [lengths] => [num_rows] => 4 [type] => 0 ) [debug] => [err] => 没有数据,请先执行SQL的'select'语句! )
回复讨论(解决方案)
mysqli_query($this -> conn,$this -> sql) 返回的是 mysqli_result 对象,不是 resource (资源)
所以 !is_resource($this->result) 成立,程序提前结束
mysqli_query($this -> conn,$this -> sql) 返回的是 mysqli_result 对象,不是 resource (资源)
所以 !is_resource($this->result) 成立,程序提前结束
要怎么改???
if(!$this -> result || !is_object($this->result)){
return $this->output("没有数据,请先执行SQL的'select'语句!");
}
if(!$this -> result || !is_object($this->result)){
return $this->output("没有数据,请先执行SQL的'select'语句!");
}
终于解决了困扰很多天的问题了,谢谢版主
内容总结
以上是互联网集市为您收集整理的应用MYSQLI读取数据库读不了问题全部内容,希望文章能够帮你解决应用MYSQLI读取数据库读不了问题所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。