Maison >développement back-end >tutoriel php >php的查询功能(如何通过查询条件获取相应表的字段)

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

WBOY
WBOYoriginal
2016-06-23 13:54:231653parcourir

<?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那个只显示了表头。我会给两位加分的,实在谢谢了!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn