2016-11-28 100 views
0

我的msqli代碼有一個奇怪的問題。我複製我的其他代碼的一部分,我得到這個:Mysqli SELECT COUNT(*)FROM TABLE returns false

$query=mysqli_query($mysql,"SELECT COUNT (*) AS number FROM table"); 
$query=mysqli_fetch_assoc($query); 
$query=$query['number']; 

我因子評分,我錯了東西,但我發現這個代碼沒有問題,所以我複製粘貼的整體的其他工作代碼和它沒有工作,儘管它在其他文件中仍然可以很好地工作。該查詢返回一個布爾值。任何想法如何使其工作?

+0

把一個別名的數量,'COUNT(*)AS total',然後訪問索引'回聲$查詢[ '總']',一個簡單的'的var_dump($查詢)'應該給你的提示 – Ghost

+1

他用'COUNT(*)AS號碼'做了這個 – Max

+1

@Ghost他的COUNT有一個別名 – Phiter

回答

0

作爲社區維基發佈。

從對功能的MySQL手冊:

「默認情況下,必須有一個函數名和括號之間沒有空格以下是這有助於函數調用和引用之間的MySQL分析器區分表或列碰巧與函數具有相同的名稱,但函數參數周圍的空格是允許的。「

http://dev.mysql.com/doc/refman/5.7/en/functions.html

一個:從COUNT (*) =>COUNT(*)刪除空格。

  • COUNT()是一個聚合「功能」。

只是爲了論證的緣故; table是一個MySQL保留字,應該是它的實際名稱。

如果你希望仍然使用該名稱(它應該是這種情況),敷在蜱:

SELECT COUNT(*) AS number FROM `table` 

檢查的查詢錯誤:

另外,使用相同的$query變量,是不好的做法。

此外,請確保您使用相同的MySQL API連接,是mysqli_而不是一個不同的。

+0

你對空白字符是正確的。最初我沒有使用相同的變量和表名,但我想讓它容易理解。感謝您的幫助,但我仍然不知道如何在其他文件中工作。你有什麼想法嗎? – Gergerossza

+0

@Gergerossza不客氣。在其他文件中工作? –

+0

在任何其他的PHP文件,但現在我發現問題的根源。我不得不製作一段視頻,並且爲我提供照片的同學感染了我的電腦,並帶有一大堆病毒。現在我希望我再次清楚。大部分奇怪的變化消失了。 – Gergerossza

相關問題