所以,我无法弄清楚为什么我的SQL COUNT不起作用。我已经尝试了几个小时了。我的SQL连接在那里,如果我请求它,则会显示所有其他数据。但计数不起作用。
我只想计算表Product
中有多少MirrorWebProductsExpanded
。
我尝试了以下内容:
<?php $query = "SELECT Count(*)
as DatabaseCount
FROM MirrorWebProductsExpanded";
$result = mysqli_fetch_array($sql);?>
My count <?php echo $result['DatabaseCount'];?>
我也尝试过:
$sql = ("SELECT COUNT(*) FROM MirrorWebProductsExpanded");
$result = mysqli_query($sql);
$out = mysqli_fetch_array($result); ?>
我的数量:
<?php print($out[0][0]); // or print($out[0]); ?>
和
<?php $query = "SELECT COUNT(*) c FROM MirrorWebProductsExpanded;";
$result = mysqli_query($query);
$row = mysqli_fetch_assoc($result);
echo "blaat:" . $row['c']; //Here is your count
?>
我可以永远继续我所尝试的但似乎没有任何效果。我做错了什么?
我应该补充一点,我发现的大多数查询都有mysql_query
或mysql_fetch_array
,我将其更改为mysqli
其他方面它打破了我的网站(白屏)...任何帮助为什么我的计数不起作用?
答案 0 :(得分:2)
试试这个:
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "MirrorWebProductsExpanded";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT count(*) as count from product";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
$row = $result->fetch_assoc();
echo $row['count'];
} else {
echo "0 results";
}
$conn->close();
?>
编辑:哦......哦!在这里,您使用有关表和数据库名称的错误详细信息。您正在使用dbname而不是表名。
因此,更改表名称,您的查询将起作用。
答案 1 :(得分:0)
1)缺少连接对象
尝试使用mysqli预备语句
//db connection
global $conn;
$servername = "localhost"; //host name
$username = "username"; //username
$password = "password"; //password
$mysql_database = "dbname"; //database name
//mysqli prepared statement
$conn = mysqli_connect($servername, $username, $password) or die("Connection failed: " . mysqli_connect_error());
mysqli_select_db($conn,$mysql_database) or die("Opps some thing went wrong");
$stmt = $conn->prepare("SELECT COUNT(*) c FROM table_name");
$stmt->execute();
$get_result =$stmt->get_result();
$row_count= $get_result->num_rows;
if($row_count>0)
{
print_r($get_result->fetch_assoc());
}
$conn->close();