![](/img/trans.png)
[英]Extracting date and time from html form to use them in a mysql query
[英]MySQL Query from HTML form - can an input use wildcards?
我已經看過了,雖然我看到了很多在原始PHP中使用通配符的解釋,但是當用戶輸入要使用通配符時,我發現沒有什么可以幫助我的。 我對PHP和MYSQL非常陌生。 應該使用哪個符號?
基本上,用戶從MYSQL數據庫請求給定等級的數據,可以是簡單數字或數字后跟字母或加號。 我希望他們能夠特別要求6a(工作正常)或6,然后再使用通配符來返回6a,6a +,6b等(我不知道該怎么做)。
有關更多詳細信息:
我有以下表格:
<form name="gradereturn" method="POST" action="gradequery.php">
<input type="text" name="Grade" value="Grade">
<input type="submit" name="Submit1" value="Retrieve">
和PHP:
<?php
$grade = $_POST['Grade'];
if (isset($_POST['Submit1'])) {
mysql_connect("localhost", "**details**", "**details**") or die(mysql_error());
mysql_select_db("**details**") or die(mysql_error());
$result = mysql_query("SELECT * FROM routes WHERE Grade='$grade'") or die(mysql_error());
$row = mysql_fetch_array( $result );
echo "Line - Colour - Grade<br />";
while($row = mysql_fetch_array($result)){
echo $row['Line']. " - ". $row['Colour']. " - ". $row['Grade'];
echo "<br />";
}
}
else print ("Please enter your required grade above");
?>
預先感謝您的任何幫助。
使用LIKE
並確保您也逃脫了$grade
:
$grade = mysql_real_escape_string($grade);
$sql = "SELECT * FROM routes WHERE Grade LIKE '{$grade}'";
$result = mysql_query($sql);
然后,他們可以指定6
或6%
還是6?
等等
您將要使用LIKE命令。
$result = mysql_query("SELECT * FROM routes WHERE Grade LIKE '$grade%'")
這告訴SQL在以$grade
開頭Grade
routes
中查找所有條目。
有關LIKE
更多信息-MySQL參考
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.