这很简单,我看到很多类似的东西,但没有什么是基本的。尝试使用以下代码设置OOP MySQLi连接时:
<?php
$link = new mysqli('localhost', 'root', '');
if (!$link) {
die('Connection Failed: '. $link->error());
}
$sql = "SELECT artist_name FROM artists";
$result = $link->query($sql);
while ($row = $result->fetch_assoc()) {
printf('Artist: %s<br />', $row['artist_name']);
}
$result->close();
$link->close();
我得到以下错误:$ result-&gt; fetch_assoc()
Fatal error: Call to a member function query() on a non-object in
C:\xampp\htdocs\PHPbook\chapter4\test2.php on line 9
我尝试了一些东西,发现$link
确实是对象,但$result
是布尔。
这段代码来自我正在阅读的一本书,并想知道自书写完以来是否有任何改变。
感谢您的帮助
答案 0 :(得分:1)
您忘了选择数据库:
mysqli_select_db($link, 'DATABASE_NAME');
答案 1 :(得分:0)
您没有与数据库的连接。请参阅Call to member function query() on a non-object
告诉您方法调用query
无法执行,因为link
尚无法使用该方法。只需选择一个数据库并检查您是否确实与该数据库建立了真正的连接。
<?php
$link = new mysqli('localhost', 'root', '', 'db_name');
if ($link->connect_error === true) {
trigger_error('No Connection', E_USER_ERROR);
}
// Continue with your logic ...