2015-03-02 127 views
0

我正在創建一個小型模擬庫管理員面板。 我是新來的PHP,所以希望有人可以幫助我的代碼。使用php/mysql基於下拉參數過濾結果

我想根據任何下拉選項/ paremter選擇篩選結果。下拉表示我的數據庫表格中的三列,其中所需的信息將被從中拉出。

所以,例如:- book_title selected - search book_title WHERE query? IS LIKE '%';我知道這是沿着這些路線,但希望一些指導。

<?php 
// Ignore warning and error messages 
error_reporting(E_ALL); 
ini_set('display_errors', '1'); 

$username=""; 
$password=""; 
$database="books"; 
$value= $_POST["filter-query"];  

mysql_connect(localhost,$username,$password); 
@mysql_select_db($duncan_library) or die("Unable to select database"); 

//catalog1// 
if ($_POST['filter-query'] == 'catalog_number') 
{ 
$query = "SELECT * FROM books WHERE catalog_number LIKE '%user-search'%; 
} 
elseif ($_POST['filter-query'] == 'book_title') 
{ 
$query = "SELECT * FROM books WHERE book_title LIKE '%user-search'%; 
} 
elseif ($_POST['filter-query'] == 'book_author') 
{ 
$query = "SELECT * FROM books WHERE book_author LIKE '%user-search'%; 
} 

$sql = mysql_query($query); 
while ($row = mysql_fetch_array($sql)) { 
     $catalog_number = $row["catalog_number"]; 
     $book_title = $row["book_title"]; 
     $book_author = $row["book_author"]; 

    echo $row["myrow"].""; 
    } 
    } 
?> 

    Filter:<br> 
       <select name="filter-query""> 
        <option value="catalog_number">Catalog Number</option> 
        <option value="book_title">Book Title</option> 
        <option value="book_author">Book Author</option> 
       </select> 

</select> 
</form> 

電流誤差

Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:\xampp\htdocs\library\index.php on line 20 
+1

你沒有正確關閉雙引號在你的'$ query ='字符串中, – jmoerdyk 2015-03-02 19:31:41

回答

0

把你的LIKE字符串中引用甚至%符號,你也錯過了用雙引號

//catalog1// 
    if ($_POST['filter-query'] == 'catalog_number') 
    { 
    $query = "SELECT * FROM books WHERE catalog_number LIKE '%user-search%'"; 
    } 
    elseif ($_POST['filter-query'] == 'book_title') 
    { 
    $query = "SELECT * FROM books WHERE book_title LIKE '%user-search%'"; 
    } 
    elseif ($_POST['filter-query'] == 'book_author') 
    { 
    $query = "SELECT * FROM books WHERE book_author LIKE '%user-search%'"; 
    } 
+0

感謝您的評論,現在再向下查看代碼 d: 警告:mysql_fetch_array()預計參數1是資源,在C空給出:\ XAMPP \ htdocs中\在線25上 「$ SQL = mysqli_query($查詢)庫\的index.php; while($ row = mysql_fetch_array($ sql)){ $ catalog_number = $ row [「catalog_number」]; $ book_title = $ row [「book_title」]; $ book_author = $ row [「book_author」]; \t echo $ row [「myrow」]。「」; \t} ?> – Duncan 2015-03-02 20:38:05