簡體   English   中英

像使用PHP的Mysql運算符

[英]Like Operator of Mysql with PHP

$inputchar = $_GET["inputChar"];
$r = $inputchar;
$result = mysql_query("Select * from foodlist WHERE foodname LIKE '$r'") 
            or die(mysql_error());

在這種情況下,我正在從用戶那里收集$ r中的值,並假設用戶在那里輸入roti,然后我要選擇所有包含roti單詞的食物清單。

您需要使用LIKE '%$r%' ,但是請記住,由於您接受用戶輸入,因此應該使用mysql_real_escape_string甚至最好使用預處理語句來轉義該值。

如果要在文本字段中搜索包含某個字符串的所有值,則要添加通配符( % )。

這應該為您工作:

$inputchar = mysql_real_escape($_GET["inputChar"]);
$r = $inputchar;
$result = mysql_query("Select * from foodlist WHERE foodname LIKE '%$r%'") 
            or die(mysql_error());

在PHP中使用簡單的邏輯,然后有條件地執行查詢。

$inputchar = $_GET["inputChar"];
if($inputchar == 'roti') {
    $result = mysql_query("Select * from `foodlist`") 
            or die(mysql_error());
} else{
    $r = $inputchar;
    $result = mysql_query("Select * from `foodlist` WHERE foodname LIKE '%$r%' OR LIKE '%$r' OR LIKE '$r%'") 
            or die(mysql_error());
}

暫無
暫無

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

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