我想檢查我的表是空的我試過這個「至極我認爲這是解決」檢查,如果我的表是空
$test_empty="SELECT *FROM objectif where 1 ";
if(empty($test_empty))
{
echo "I m here";
}
但似乎這是行不通的。 感謝您的幫助
我想檢查我的表是空的我試過這個「至極我認爲這是解決」檢查,如果我的表是空
$test_empty="SELECT *FROM objectif where 1 ";
if(empty($test_empty))
{
echo "I m here";
}
但似乎這是行不通的。 感謝您的幫助
取決於你如何連接到你的數據庫(例如,使用的mysqli):
$db = new mysqli("localhost","username","password","dbname");
$check = $db->query("SELECT COUNT(*) FROM objectif");
if ($check->num_rows == 0 || $check->fetch_field() == 0){
echo "table is empty";
}else{
echo "table is not empty";
}
目前,你的代碼是不實際連接到數據庫或查詢表 - 你基本上只是檢查變量$查詢是否爲空(它永遠不會,因爲它包含一個字符串!
運行一個查詢來獲取記錄的數量,並根據上面的代碼檢查是一種方法做到這一點。
良好的代碼示例,但要儘量提供更多的細節,所以OP可以學習 – davejal
好一點,添加了一些explination –
使用此
$mysqli = new mysqli("localhost","root","","db");
if ($result = $mysqli->query("SELECT * FROM `table` LIMIT 1"))
{
if ($obj = $result->fetch_object())
{
echo "NOT EMPTY";
}
else
{
echo "empty";
}
$result->close();
}
$mysqli->close();
良好的代碼示例,但要儘量提供更多的細節,所以OP可以學習 – davejal
請嘗試以下代碼:
$test_empty="SELECT * FROM objectif";
$query = mysql_query($test_empty);
if(mysql_affected_rows() > 0)
{
echo "It is Empty";
}
良好的代碼示例,但嘗試提供更多詳細信息,因此OP可以學習 – davejal
請不要使用mysql_ *函數,因爲這些函數已被棄用。請改用mysqli或PDO。 –
我不認爲'空()'會這樣的工作,看到[規格](HTTP:// PHP。淨/手動/ EN/function.empty.php)。您需要[打開連接](http://php.net/manual/en/function.mysql-connect.php)到您的數據庫,運行查詢捕獲結果並關閉連接。你可能想要返回你可以檢查== 0的計數。'SELECT COUNT(*)FROM objectif'。 –