Heim >Backend-Entwicklung >PHP-Tutorial >php的查询功能(如何通过查询条件获取相应表的字段)
<?php//获得连接$db = mysql_connect("localhost", "root", "root") or die(mysql_error());//echo "Connected to MySQL<br/>";//连接数据库mysql_select_db("test") or die(mysql_error());//echo "Connected to Database"; //查询数据,并用表格显示出来 @$checked = $_POST['checked']; @$result = mysql_query("select * from books",$db); echo "<table border=1>\n"; echo "<tr> <td>isbn</td> <td>author</td> <td>title</td> <td>price</td> "; echo "</tr>\n"; //循环遍历 while ($myrow = mysql_fetch_row($result)){ printf("<tr> <td>%s</td> <td>%s</td> <td>%s</td> <td>%s</td>", $myrow[0], $myrow[1],$myrow[2],$myrow[3]); } echo "</table>\n";?><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title></head><body><form action="" name=""><br/> <br/> <input type="button" value="查询" name="submit"/> <input type="text" name="checked"/></form></body></html>
请描述下你遇到的问题
result = mysql_query("select * from books where checked=‘$checked’ ");
比如输入要查询的isbn号,然后确定,在下方输出符合条件的查询结果。
result = mysql_query("select * from books where checked=‘$checked’ ");这个我试了一下,出现以下错误
还有一个问题要请教是如何是要先查询之后才显示表要显示的结果。
... where 字段='$checked' //字段换成你实际的字段
if(isset($_POST['checked'])){
@$result = mysql_query("select * from books",$db);
echo "
isbn | author | title | price |
%s | %s | %s | %s | ", $myrow[0], $myrow[1],$myrow[2],$myrow[3]);
谢谢jordan102,那请问如何通过查询条件,然后在同个页面下输出符合查询条件的表呢?
这是我的表
我试了jordan102的代码,也不知道我添加if(isset($_POST['checked'])){.......}这段代码的位置对不对。
我按了下查询的按钮,但是没反应。代码如下
<?php//获得连接$db = mysql_connect("localhost", "root", "root") or die(mysql_error());//echo "Connected to MySQL<br/>";//连接数据库mysql_select_db("test") or die(mysql_error());//echo "Connected to Database"; //查询数据,并用表格显示出来 @$checked = $_POST['checked'];// @$result = mysql_query("select * from books",$db);// @$result = mysql_query("select * from books where isbn='$checked' "); if(isset($_POST['checked'])){ @$result = mysql_query("select * from books",$db); echo "<table border=1>\n"; echo "<tr> <td>isbn</td> <td>author</td> <td>title</td> <td>price</td> "; echo "</tr>\n"; //循环遍历 while ($myrow = mysql_fetch_row($result)){ printf("<tr> <td>%s</td> <td>%s</td> <td>%s</td> <td>%s</td>", $myrow[0], $myrow[1],$myrow[2],$myrow[3]); } echo "</table>\n";} ?><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title></head><body><form action="" name=""><br/> <br/> <input type="button" value="查询" name="submit"/> <input type="text" name="checked"/></form></body></html>
@$result = mysql_query("select * from books where isbn='$checked'",$db);
@jordan102我试了下@$result = mysql_query("select * from books where isbn='$checked'",$db); 但是点了按钮还是不行。
这句我试了,但是我输入books的isbn到输入框的时候,点击查询,还是查不到isbn=1的对应的全部内容。
只出来一部分数据,那你检查下没查出来的数据哪里不同。
$result = mysql_query("select * from books",$db);
条件都不加,还算是条件查询吗?
我运行之后没有数据表显示,显示结果如下:
会不会是那些字段没对应呢?
回复xuzuning,不好意思!忘了加。
没有符合条件的记录,自然列表就是空的
//获得连接
$db = mysql_connect("localhost", "root", "root") or die(mysql_error());
//echo "Connected to MySQL
";
//连接数据库
mysql_select_db("test") or die(mysql_error());
//echo "Connected to Database";
//查询数据,并用表格显示出来
// @$checked = $_POST['checked'];
// @$result = mysql_query("select * from books",$db);
// @$result = mysql_query("select * from books where isbn='$checked' ");
if(isset($_POST['checked'])){
$checked=$_POST['checked'];
@$result = mysql_query("select * from books where isbn='$checked'",$db);
echo "
isbn | author | title | price |
%s | %s | %s | %s | ", $myrow[0], $myrow[1],$myrow[2],$myrow[3]);
回复qxhaidao、jordan102:折腾了两位一个下午,qxhaidao的代码运行成功,jordan那个只显示了表头。我会给两位加分的,实在谢谢了!