mysql_connect("localhost","root","") or die("Khong the ket noi csdl!");
mysql_select_db("dream") or die("Khong the select database!");
mysql_query("SET NAMES 'utf8'");
$sql1 = mysql_query("SELECT * FROM list_console");
........
foreach (mysql_fetch_array($sql1) as $list) {
echo $list['name']
}
我想回复一下" name"在我的数据库(list_console)中,但我收到以下错误:
Illegal string offset 'name' in ...
答案 0 :(得分:1)
问题是如果没有更多行,mysql_fetch_array将返回false。并且您尝试获取索引' name'来自布尔。
而不是这个foreach使用此代码:
while ($row = mysql_fetch_array($sql1)) {
echo $row['name'];
}
如果它没有更多行$ row将是假的,而且会停止。
答案 1 :(得分:0)
建议不要使用mysql,因为它已被弃用。尝试以下代码:
<?php
$servername = "localhost";
$username = "database username";
$password = "password (if any)";
$dbname = "your database name";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM list_console";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo $row["name"]. "<br>";
}
} else {
echo "0 results";
}
$conn->close();
?>