簡體   English   中英

在mysql查詢的WHERE子句中使用php變量

[英]using a php variable in the WHERE clause of a mysql query

我正在運行一個我認為應該工作的非常簡單的查詢。 我之前沒有做過的唯一事情是在查詢的WHERE子句中放置一個php變量。 變量$ X是一個數值,例如100。運行此查詢時,我得到的返回值為0。 我在做些明顯愚蠢的事情嗎?

SELECT generator_64k.n
FROM generator_64k
WHERE generator_64k.n<= '$X'

我在網上瀏覽了一下,還嘗試了以下操作:

SELECT generator_64k.n
FROM generator_64k
WHERE generator_64k.n<= '" . $X . "'

但這也只返回0。

有任何想法嗎? 提前致謝。

$query = "SELECT generator_64k.n FROM generator_64k WHERE generator_64k.n<= {$X};";

試試這個,或發布您的PHP代碼。

<?php
$X = 100;
$query = "SELECT n FROM generator_64k WHERE n <= $X";
$result = mysql_query($query);
if (!$result) {
   echo ('Query error: ' . mysql_error());
}

像這樣

$sql="select `username` from `users` where id='$newid';";
mysql_query($sql);

這里$ newid是int值。 用戶名之前和之后使用的符號,要獲得此名稱,您必須按esc下方的鍵。

例如php並使用變量$ query =“ select from from table1 where col1 <=”。$ myVariable;

$ result = mysql_query($ query);

mysql_query()函數在發生錯誤時返回false(false == 0),否則返回資源。 mysql_query不從結果集中返回值。 您必須使用mysql_fetch_assoc或類似方法從結果集中獲取行。

另外,請確保將查詢用雙引號引起來,以便PHP可以擴展變量$X

使用mysql_error從上次調用mysql_query時獲取錯誤。

數值附近不能包含' MySQL將其視為字符串。

你應該這樣做

" WHERE number <= " . (int)$val . " .. "

// or (but not recommended due to security problem)
" WHERE number <= $val "

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM