簡體   English   中英

SQL變量插入INSIDE mysql_query

[英]SQL Variable Inserting INSIDE mysql_query

我正在嘗試使用PHP和SQL制作價格滑塊,但是當我在此代碼中遇到問題時遇到問題

$query = mysql_query("SELECT * FROM price WHERE phone_price BETWEEN" .$from. "AND" .$to. );
while($row = mysql_fetch_array($query)){
print $row['phone_name'];
print $row['phone_price'];
print '';
}

我想運行SQL查詢,例如SELECT * FROM price WHERE phone_price BETWEEN 300 AND 500

我正在制作一個測試版,因此我接受了<input>的$ from和$ to值,我認為在mysql_query中插入變量時出現了錯誤。

錯誤- Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\\xampp\\htdocs\\login\\slide\\slide.php on line 28

您的查詢有誤。 BETWEEN和AND之后需要空格。 否則php會讀取您的查詢,例如...BETWEEN123AND1234... 而且您最好使用引號放置var:

$query = mysql_query("SELECT * FROM `price` WHERE `phone_price` BETWEEN '".$from."' AND '".$to."'");

使用PDO內置對象。 mysql_函數已被棄用。

初始化連接。

$dsn = "mysql:host=localhost;dbname=my_database";
$pdo = new PDO($dsn, $login, $password);

使用准備語句。

$sh = $pdo->prepare("SELECT * FROM price WHERE phone_price BETWEEN :from AND :to");

綁定值和值類型。

$sh->bindParam(':from',$from,PDO::PARAM_INT);
$sh->bindParam(':to',$to,PDO::PARAM_INT);

將結果提取到assoc數組中。

$res = $sh->fetch_all(PDO::FETCH_ASSOC);

祝好運

暫無
暫無

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

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