[英]How to get the result of a select count(*) query in PHP?
我在PHP中使用此查詢:
mysql_query("select count(*) from registeredUsers where email=".$_SESSION["username"]);
當我使用echo
打印出結果時,沒有任何內容被打印出來。 上述聲明的返回值究竟是什么?
您的代碼不包含任何提取語句。 而另一個答案指出,你需要圍繞$_SESSION["username"]
單引號。
$result = mysql_query("select count(*) from registeredUsers where email='{$_SESSION['username']}'");
// Verify it worked
if (!$result) echo mysql_error();
$row = mysql_fetch_row($result);
// Should show you an integer result.
print_r($row);
mysql_query返回結果資源。 您可以使用mysql_result
讀取結果
$res = mysql_query("select count(*) from registeredUsers where email='".mysql_real_escape_string($_SESSION["username"])."'");
echo mysql_result($res,0);
您需要在查詢中圍繞會話變量使用單引號
$result = mysql_query("SELECT COUNT(*)
FROM registeredUsers
WHERE email = '".$_SESSION['username']."' ");
$resultemp = mysql_query("select count(*) AS count from registeredUsers where email='{$_SESSION['username']}'");
// Verify mySQL Query Rresult
if (!$resultemp) echo mysql_error();
// Convert mySQL Result for PHP
$counter=mysql_fetch_assoc($resultemp);
$counter=$counter['count'];
// Print Total Employees
echo $counter;
您需要使用mysql_fetch_array()在用戶定義的變量中返回值。 然后必須打印返回的值。
$result=mysql_query("select count(*) from registeredUsers where email='{$_SESSION['username']}'")
$COUNT_NUMBER=mysql_fetch_array($result);
echo "<br>1.Count=" .$COUNT_NUMBER[0];
計數查詢總是會返回一個值,該值是0
以上,如果沒有記錄返回,或者是一個整數0
,如果記錄相匹配。
它應該至少打印0
,您發布的查詢意味着:
Get the number of records where the email address is equal to the session username
這可能沒有意義,你的意思是where username = ".$_SESSION["username"]
或類似的地方嗎?
您可能希望回顯查詢本身以確定它正在返回您期望的內容。
mysql_query()返回用於從結果集中獲取信息的資源。 使用mysql_fetch_array()等函數從結果集中檢索行。 在這種情況下,只會有一行。
它應該為您提供具有您提供的電子郵件地址作為此查詢的參數的注冊用戶的數量。 (可以檢查給定的電子郵件地址是否已經為其他用戶注冊。)如果電子郵件地址尚未注冊,則返回空字段。 (這可能就是為什么在您的情況下沒有打印出來的原因。請使用您確定要在數據庫中的電子郵件地址進行嘗試。)
嘗試將其轉換為字符串,然后再回顯它。 作為int,0將顯示為空字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.