有人可以帮我弄清楚mysql_query无法正常工作的原因吗?
<?php
$dbhost = "localhost";
$dbusername = "USERNAME";
$dbpassword = "PASSWORD";
$dbname = "DB_NAME";
$connection = mysql_connect($dbhost, $dbusername,$dbpassword) or die('Could not connect');
$db_selected = mysql_select_db($dbname, $connection) or die(mysql_error());
echo " connect... \n";
$result = mysql_query("select * from test",$db_selected);
while($row = mysql_fetch_array($result))
{
echo $i++;
echo "Id : " . $row['Id'] . " Name : " .$row['name'] . " Address : " . $row['address'];
echo "<br>";
}
?>
结果: 连接...
答案 0 :(得分:1)
您必须在$connection
中使用$db_connected
代替mysql_query
。请参阅man page。
您没有看到错误这一事实意味着您的错误报告未正确配置;检查您的php.ini
和this answer。
因为你提取数字数组而不是关联数组(使用mysql_fetch_assoc()
),它无论如何都不会工作,这是需要$rec['Id']
语法(而不是$rec[3]
)。
但是,如果您刚刚开始使用PHP和MySQL,不要使用mysql_ *函数。它们已弃用,很快就会删除,您将浪费时间学习不再使用的内容。请改用PDO。有点难以掌握,但是lightyears better。
答案 1 :(得分:0)
如果您想按名称引用列,则必须使用mysql_fetch_assoc($result)
而不是mysql_fetch_array($result))
但是也不要使用它们。使用mysqli_*
函数代替或更好地使用pdo
。
echo $i++
因未定义而无法生成任何内容