2014-02-24 80 views
-2

大家好我面前Mysql的選擇不工作的可變

我做了一個簡單的MySQL選擇這樣

$menuDig = mysql_query("SELECT * FROM gl98t_posichool_tricks WHERE `category_id` = '$cid'"); 

$cid

$cid = $trick['category_id']; 

這是我從來沒有遇到過有趣的問題這是string(1) "1"它的工作原理,但是當我輸入cid像這樣manualy

$cid = '1'; 

它不起作用。我在這兩個例子var_dump和輸出是相同的string(1) "1"

有誰知道哪裏可能是問題?

而且輸出是太怪造成$trick['category_id'];是數據庫整數,但是當我把它放在$cid它是字符串

我首先雖然我已經把整得成$cid但它要麼不工作。

+2

你不需要使用引號整數 –

+0

查詢工作完美,沒有任何錯誤,如果ü把完整的代碼,然後我可以更好地理解你的問題 – honey4092

回答

0

試試這個

$cid = intval($trick['category_id']); 
$cid = intval(1); 

然後在您的SQL操作:

$menuDig = mysql_query("SELECT * FROM gl98t_posichool_tricks WHERE `category_id` = ".$cid); 
+0

謝謝,但不工作 – user2826311

+2

告訴我們的錯誤請問 – Tommy

+0

THX很多我覺得現在像一個dumbas我打開錯誤顯示,我已經看到,我的連接失敗,在某些情況下,我重新連接,它現在工作良好thx很多爲您的答案無論如何 – user2826311

0
mysql_query("SELECT * FROM gl98t_posichool_tricks WHERE `category_id` = '$cid'"); 

取下$ CID單引號,並再次檢查

+0

謝謝,但不起作用 – user2826311

+0

引號被刪除後,查詢將變成這樣:mysql_query(「SELECT * FROM gl98t_posichool_tricks WHERE'category_id' = $ cid」); – Abhinav

+0

你必須通過1像一個整數,而不是作爲一個字符串,如果你的數據類型fot cid在你的數據庫是int類型 – Abhinav

0

試試這個

$menuDig = mysql_query("SELECT * FROM gl98t_posichool_tricks 
         WHERE `category_id` = ".intval($cid)); 

,並在您的變量使用此

$cid = 1; //without quotes. 
+0

謝謝,但不工作 – user2826311

+0

@ user2826311嘗試更新的答案。 –

+0

thx很多我感覺像一個dumbas現在我打開錯誤顯示,我看到我的連接失敗,在某些情況下,我重新連接,它現在工作良好thx很多爲您的答案無論如何 – user2826311

0

你試過作出查詢,而一個變量,並檢查結果?

$ menuDig = mysql_query(「SELECT * FROM gl98t_posichool_tricks WHERE category_id = 1」);

試試這個並檢查結果。

如果沒有上述工作的選項,也許有一個問題在其他地方...