10/10/2018, 11:36
Cần giúp : Search trong database
em có 1 bảng database như sau :
username points
aa 9
...
bb 5
E muốn làm 1 form search đơn giản. mà trong đó ta có thể search cùng lúc nhiều username .
VD : Search : aa, bb
KQ : aa = 9
bb = 5
Đây là code của em nhưng nó không được. vẫn chỉ search được từng username thôi
username points
aa 9
...
bb 5
E muốn làm 1 form search đơn giản. mà trong đó ta có thể search cùng lúc nhiều username .
VD : Search : aa, bb
KQ : aa = 9
bb = 5
Đây là code của em nhưng nó không được. vẫn chỉ search được từng username thôi
Code:
<html> <head> <title>Search the Database</title> </head> <body> <form action="search.php" method="post"> Search: <input type="text" name="term" /><br /> <input type="submit" name="submit" value="Submit" /> </form> </body> </html>
Code:
<?php $hostname = "***x"; $data_username = "***x"; $data_password = "***x"; $data_basename = "***x"; mysql_connect($hostname, $data_username , $data_password ); mysql_select_db($data_basename ); $term = array( $_POST["term"] ); foreach ( $term as $test ) { $sql = mysql_query("select * from members where username like '%$test%'"); while ($row = mysql_fetch_array($sql)){ echo '<br/> USERNAME: '.$row['username']; echo '<br/> POINTS: '.$row['points']; echo '<br/><br/>'; } } ?>
Bài liên quan
Nếu bạn dùng: $term = array( $_POST["term"] );
thì $term sẽ là, $term => $term["0"] = 'aa, bb' . Nên khi bạn dùng foreach cho array này, nó chỉ có 1 key và sẽ trả về aa, bb và SQl của bạn sẽ là:
$term => $term[0] = 'aa';
$term[1] = 'bb';
và SQL của bạn sẽ work theo như cách bạn nghì là, loop qua từng key của array.
Hope it helps,
VD :
aa
bb
Nghĩa là nhập văn bản theo từng dòng. không phải theo kiểu aa,bb
nhưng vẫn không được
$term = explode("\r\n",$_POST["term"]);
Cậu có rảnh không. mình muốn nhờ cậu viết giúp mình 1 soft. mình sẽ trả công cho cậu. có gì liên hệ mình nhé : YM : rongtrang_90