我有一個HTML表單,可以讓用戶編寫他們想要搜索的內容。在這種情況下,一個名稱。基於用戶從表單輸入創建數據庫查詢?
該表單可行,但它在php中。我不知道我必須編寫什麼才能讓MySQL搜索數據庫以查找用戶輸入的內容。
這裏是我卡住行:我使用PHP 5
我有一個HTML表單,可以讓用戶編寫他們想要搜索的內容。在這種情況下,一個名稱。基於用戶從表單輸入創建數據庫查詢?
該表單可行,但它在php中。我不知道我必須編寫什麼才能讓MySQL搜索數據庫以查找用戶輸入的內容。
這裏是我卡住行:我使用PHP 5
這應該讓你使用的mysqli你的方式
$result = mysql_query("SELECT * FROM {$table} WHERE name = 'What do i gonna write
here? (take away the ' ");
。該手冊可以找到here。
這假設你在發佈你的表單,否則你可以改變$ _POST到你將要使用的任何請求變量。在調用mysqli_real_escape_string之前或之後對錶單變量進行一些理智的檢查在生產環境中也會非常有用(必需)。
$db = new mysqli("localhost","user","password","database");
if(mysqli_connect_error())
{
printf("Connection failed:%s \n",mysqli_connect_error());
exit();
}
$name = mysqli_real_escape_string($db, $_POST['search']);
$table = 'some_table';
if($result = $db->query("SELECT * FROM $table WHERE name = $name", MYSQLI_ASSOC))
{
while($row = $result->fetch_object())
{
// $row is an associative array
// Do something here
}
}
$db->close();
感謝偉大的工程,但如何以保存的方式輸出結果,如果結果= null在mysql中的部分,謝謝你,我真的很感謝你的幫助和善良:) –
你的問題是如何查詢數據庫,而不是如何輸出結果。你需要做一些研究。 – ashurexm
$sf = stripslashes($_REQUEST['search']);
$sf = mysql_real_escape_string($sf);
$result = mysql_query("SELECT * FROM {$table} WHERE name = '". $sf."'");
while($row = mysql_fetch_array($result)){
//do stuff
}
表單方法post或get?輸入名稱是什麼?你需要結果輸出幫助嗎? – Nemanja
表單方法是Post並且輸入名稱是:search並且是的,我需要與Where Where Name = part的幫助 –