回声计数从SQL和回声
问题描述:
所以,我不明白为什么我的SQL COUNT不起作用。我一直在尝试几个小时。我的SQL连接在那里,如果我请求它,则显示所有其他数据。但伯爵不起作用。回声计数从SQL和回声
我只想计算表MirrorWebProductsExpanded
中有多少Product
。
我已经试过如下:
<?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
其他明智它打破了我的网站(白色屏幕)...任何帮助,为什么我的计数不工作?
答
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();
答
试试这个:
<?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();
?>
编辑: Oh..ho!在这里你正在使用有关表和数据库名称的错误细节。您正在使用dbname而不是表名。
所以改变你的表名和你的查询将工作。
什么显示'的var_dump(mysqli_fetch_array($结果));'?仅供参考,您应继续使用PDO或任何其他Db对象接口,而不要使用mysql(i)*函数。 ;) – zenko
@zenko mysqli有什么问题? – Arnial
你的连接对象在哪里? – JYoThI