也许这个问题是重复的。 但我找不到我问题的答案。我遇到了这个问题Fatal error: Call to undefined method mysqli_stmt::get_result() in demo.php on line 24
第 24 行位于代码的这一部分$tasks = $stmt->get_result();
这是我的演示.php代码。
<?php
/**
* Class to handle all db operations
* This class will have CRUD methods for database tables
*
* @author Ravi Tamada
* @link URL Tutorial link
*/
class Demo {
private $conn;
function __construct() {
require_once dirname(__FILE__) . '/include/db_connect.php';
// opening db connection
$db = new DbConnect();
$this->conn = $db->connect();
}
public function getAllChatRooms() {
$stmt = $this->conn->prepare("SELECT * FROM chat_rooms");
$stmt->execute();
$tasks = $stmt->get_result();
$stmt->close();
return $tasks;
}
public function getAllUsers() {
$stmt = $this->conn->prepare("SELECT * FROM users");
$stmt->execute();
$tasks = $stmt->get_result();
$stmt->close();
return $tasks;
}
public function getDemoUser() {
$name = 'AndroidHive';
$email = 'admin@androidhive.info';
$stmt = $this->conn->prepare("SELECT user_id from users WHERE email = ?");
$stmt->bind_param("s", $email);
$stmt->execute();
$stmt->store_result();
$num_rows = $stmt->num_rows;
if ($num_rows > 0) {
$stmt->bind_result($user_id);
$stmt->fetch();
return $user_id;
} else {
$stmt = $this->conn->prepare("INSERT INTO users(name, email) values(?, ?)");
$stmt->bind_param("ss", $name, $email);
$result = $stmt->execute();
$user_id = $stmt->insert_id;
$stmt->close();
return $user_id;
}
}
}
?>
在我的索引中.php我有调用函数的代码。这是示例代码
<?php
$chatrooms = $demo->getAllChatRooms();
foreach ($chatrooms as $key => $chatroom) {
$cls = $key == 0 ? 'selected' : '';
?>
<li id="<?= $chatroom['chat_room_id'] ?>" class="<?= $cls ?>">
<label><?= $chatroom['name'] ?></label>
<span>topic_<?= $chatroom['chat_room_id'] ?></span>
</li>
<?php
}
?>
请帮助我构造此代码。
谢谢。
您需要安装 mysqlnd 支持。(MySQL 本机驱动程序)
你可以将你的函数替换为波纹管我遇到像你这样的问题,但这会解决,请尝试一下谢谢
public function getAllChatRooms() {
$query = "SELECT chat_room_id, name, created_at FROM chat_rooms WHERE 1";
if ($result = mysqli_query($this->conn, $query)) {
return $result;
mysqli_free_result($result);
}
}
public function getAllUsers() {
$query = "SELECT user_id, name, email, gcm_registration_id, created_at FROM users WHERE 1";
if ($result = mysqli_query($this->conn, $query)) {
return $result;
mysqli_free_result($result);
}
}