我有一个名为articles的数据库,我只想打印出数据库中的行数。这是我的代码:
<?php
$con = mysql_connect('link', 'database', 'password');
if (!$con) {
die('Could not connect: ' . mysql_error());
}
$result = mysql_query("SELECT COUNT(*) FROM articles");
$row=mysql_fetch_array($result)
?>
<p>The amount of rows is <?php echo $row ?>.</p>
当我测试此代码时,只是给我&#39;行数是。&#39;作为输出。我做错了什么?
编辑:这是我现在的完整代码,但它仍然无法运行:
$con = mysqli_connect('url', 'database', 'password');
if (!$con) {
die('Could not connect: ' . mysqli_error());
}
$result = mysqli_query($con, "SELECT COUNT(URL) AS row_count FROM articles");
if (!$result ) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . mysqli_error($con);
exit;
}
$row=mysqli_fetch_array($result)
?>
<p>The amount of rows is <?= $row['row_count'] ?>.</p>
错误:DB错误,无法查询数据库MySQL错误:未选择数据库
答案 0 :(得分:4)
您正试图打印该行。
使用echo $row[0]
代替
另外,由于它没有打印任何内容,我怀疑你的查询失败了,因为FALSE将在PHP中被echo
删除。
旁注:mysql_*
已弃用,请考虑改为使用PDO
。
编辑:
以下完整代码
<?php
$con = new mysqli('url', 'database', 'password', 'db_name');
if (!$con) {
die('Could not connect: ' . mysqli_error());
}
$result = $con->query("SELECT COUNT(*) AS row_count FROM articles");
if (!$result) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . $con->error;
exit;
}
$row = $result->fetch_assoc();
?>
<p>The amount of rows is <?= $row['row_count'] ?>.</p>
答案 1 :(得分:1)
你是echo
一个数组(应该给你错误)。相反,您可以为COUNT
设置别名:
$result = mysqli_query($con, "SELECT COUNT(*) AS Total FROM articles");
echo
就像:
<p>The amount of rows is <?php echo $row['Total'] ?>.</p>
答案 2 :(得分:-1)
正如其他人所说,当你需要在数组中打印某些东西时,你正试图打印数组(因此是fetch_array
)。
此外,mysql_*
已弃用,我使用的mysqli_*
非常相似且易于切换。
此外,请尝试计数中的字段名,而不是*
。我通常使用索引或主键或其他东西。
<?php
$link = mysqli_connect(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);
if (mysqli_connect_errno($link)) {
echo 'Could not select database:' . DB_NAME;
exit;
}
$result = mysqli_query($link, "SELECT COUNT(fieldname) AS row_count FROM articles");
if (!$result ) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . mysqli_error($link);
exit;
}
$row=mysqli_fetch_array($result)
?>
<p>The amount of rows is <?= $row['row_count'] ?>.</p>