PHP - Echo'ing东西而MySQL数据库
问题描述:
我想,我可能需要帮助,我的PHP代码... 我想呼应在MySQL数据库中的信息,它给我的错误:Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /usr/local/ampps/www/php/db.php on line 18
PHP - Echo'ing东西而MySQL数据库
我的代码是:
<?php
$servername = "blabla"; //changed, connecting works
$username = "blabla";
$password = "blabla";
$database = "blabla";
// Create connection
$conn = new mysqli($servername, $username, $password, $database);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
} else {
echo "Connection success \n";
}
$sql = mysql_query("SELECT * FROM Schueler");
while($data = mysql_fetch_array($sql)) //This is line 18...
{
echo "ID: " . $data['ID'] . " Vorname: " . $data['Vorname'] . " Nachname: " . $data['Nachname'] . " Klasse: " . $data['Klasse'] . "<br>";
}
$conn->close();
?>
将是很好,如果有人可以帮助我:)
编辑:
我固定它仅使用mysqli的,这是我worki ng代码:
// Create connection
$conn = new mysqli($servername, $username, $password, $database);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
} else {
echo "Connection success \n";
}
$sql = "SELECT ID, Vorname, Nachname FROM Schueler";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "id: " . $row["ID"]. " - Name: " . $row["Vorname"]. " " . $row["Nachname"]. "<br>";
}
} else {
echo "0 results";
}
$conn->close();
感谢您的快速建议。
答
您已使用mysqli
进行连接设置,然后使用简单的mysql
函数获取结果集和fetch_array逻辑。在这种情况下你需要统一。
我已将mysql_query()
调用更改为mysqli_query()
调用,并且同样调用调用mysqli_fetch_array()
调用。
最终代码变成:
$sql = mysqli_query("SELECT * FROM Schueler", $conn);
while($data = mysqli_fetch_array($sql))
{
echo "ID: " . $data['ID'] . " Vorname: " . $data['Vorname'] . " Nachname: " . $data['Nachname'] . " Klasse: " . $data['Klasse'] . "<br>";
}
看来你没有连接到数据库 – scaisEdge
它说:“连接成功”为我实现成这样排序的我连接到数据库中,我觉得代码中的错误上面一行。 – Bob
您正在使用'mysqli',然后使用'mysql_fetch_array'获取数组。这两个不应该是一样的吗? – shahsani