2015-03-02 54 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