> 백엔드 개발 > PHP 튜토리얼 > php的查询功能(如何通过查询条件获取相应表的字段)

php的查询功能(如何通过查询条件获取相应表的字段)

WBOY
풀어 주다: 2016-06-23 13:54:23
원래의
1651명이 탐색했습니다.

<?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 "

\n";
echo "




";
echo "\n";
//循环遍历
while ($myrow = mysql_fetch_row($result)){
printf("



", $myrow[0], $myrow[1],$myrow[2],$myrow[3]);
}
echo "
isbn author title price
%s %s %s %s
\n";
}

谢谢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,不好意思!忘了加。

没有符合条件的记录,自然列表就是空的


回复Jordan120,还是没有表显示。

回复xuzuning,请问这句不是@$result = mysql_query("select * from books where isbn='$checked'",$db);通过查询isbn的编号然后判断符合条件的来输出表。

表头也没有显示吗?

回复Jordan02:没有显示

现在的代码是如何写的,贴出来看看。

<?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 where isbn='$checked'",$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="post"><br/>  <br/>   <input type="submit" value="查询" name="submit"/>   <input type="text" name="checked"/></form></body></html>
로그인 후 복사

@$result = mysql_query("select * from books where isbn=' $checked'",$db);
在哪里赋值的???

嗦嘎,我在#18标红了你还抄错。

//获得连接
$db = mysql_connect("localhost", "root", "rDSzPnhnDJCAHYuj") 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 "

\n";
    echo "
             
             
             
             
             ";
    echo "\n";
    //循环遍历
    while ($myrow = mysql_fetch_row($result)){
        printf("
                           
                           
                           
                           ", $myrow[0], $myrow[1],$myrow[2],$myrow[3]);
    }
    echo "
isbn author title price
%s %s %s %s
\n";
}
?>


    
    无标题文档




    

    
    


//获得连接
$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 "

\n";
    echo "
             
             
             
             
             ";
    echo "\n";
    //循环遍历
    while ($myrow = mysql_fetch_row($result)){
        printf("
                           
                           
                           
                           ", $myrow[0], $myrow[1],$myrow[2],$myrow[3]);
    }
    echo "
isbn author title price
%s %s %s %s
\n";
}
?>


    
    无标题文档




    

    
    


回复qxhaidao、jordan102:折腾了两位一个下午,qxhaidao的代码运行成功,jordan那个只显示了表头。我会给两位加分的,实在谢谢了!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿