Maison >développement back-end >tutoriel php >请问我这个 通讯簿浏览器 为什么没有数据显示呀?谢谢

请问我这个 通讯簿浏览器 为什么没有数据显示呀?谢谢

WBOY
WBOYoriginal
2016-06-20 12:42:031286parcourir

nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

   


      php_通讯簿浏览器
      
   
   
      

通讯簿浏览器


      

         function check_mysql(){
        if(mysql_errno()>0)
         echo "
 MySQL错误". mysql_errno().":".mysql_error();
      }
      $db= mysql_connect("localhost","root","");
      if(!$db)
        echo "数据库连接失败";
      @mysql_query("set names 'gb2312'");
      mysql_select_db("maildb");
      check_mysql();
      if(isset($left)){
         if($id        $query="SELECT id,name,email FROM addressbook WHERE id        $result=mysql_query($query);
        check_mysql();
        $row=mysql_fetch_row($result);
        $id=$row[0]; $name=$row[1]; $email=$row[2];
      }
      if(isset($right)){
        $query="SELECT id,name,email FROM addressbook ORDER BY id DESC";
        $result=mysql_query($query);
        $row=mysql_fetch_row($result);
        $max=$row[0];
        if($id==$max) {$id=$max-1;$message="这是最后1条信息";}
        $query="SELECT id,name,email FROM addressbook WHERE id>'$id'";
        $result=mysql_query($query);
        check_mysql();
        $row=mysql_fetch_row($result);
        $id=$row[0]; $name=$row[1]; $email=$row[2];
      }
      if(isset($search)){
        $id=0;
        $query="SELECT id,name,email FROM addressbook WHERE (name='$name' and id>'$id')";
        $result=mysql_query($query);
        check_mysql();
        $row=mysql_fetch_row($result);
        if($row[0]>0){
           $id=$row[0]; $name=$row[1]; $email=$row[2];
      }
      else{
        $name=""; $email=""; $message="记录不存在";
       }
     }
     if(isset($add)){
      $query="INSERT INTO addressbook(name,email) VALUES('$name','$email')";
      $result=mysql_query($query);
      check_mysql();
      $id=mysql_insert_id();
      $message="记录已添加(id='$id')";
    }
if(isset($update))   {
      $query="UPDATE addressbook SET name='$name', email='$email' WHERE id='$id'";
      $result=mysql_query($query);
      check_mysql();
      $message="记录已更新(id='$id')";
    }
    if(isset($delete)){
      $query="DELETE FROM addressbook WHERE id='$id'";
      $result=mysql_query($query);
      check_mysql();
      $name=""; $email="";
      $message="记录已删除(id='$id')";
      $sql="alter table addressbook drop id";
      mysql_query($sql);
      $sql="alter table addressbook add id int auto_increment primary key";
      mysql_query($sql);
    }
    $name=trim($name); $email= trim($email);
?> 
      
name: 
 />

      
email address 
 />

      

         ">
         

      

         
         
          />
         if(isset($message))
         echo"

$message";
   ?>
      

   



回复讨论(解决方案)

请求大神测试指导!谢谢!

 $query="SELECT id,name,email FROM addressbook WHERE (name='$name' and id>'$id')";

id是数值类型,不要用引号,应改为
 $query="SELECT id,name,email FROM addressbook WHERE (name='$name' and id>$id)";

 $query="SELECT id,name,email FROM addressbook WHERE (name='$name' and id>'$id')";

id是数值类型,不要用引号,应改为
 $query="SELECT id,name,email FROM addressbook WHERE (name='$name' and id>$id)";



不行 !去掉引号还是无数据显示的!

请求大神测试指导!谢谢!

if(isset( $left)){
从未对 $left 赋过值,所以 $left 并不存在
因此不会进入查询分支,自然也就不会有数据了

$left变量你没有定义,不会进入下面的分支啊。

 if(isset($left)){

if(isset( $left)){
从未对 $left 赋过值,所以 $left 并不存在
因此不会进入查询分支,自然也就不会有数据了



请问根据上面的具体怎么定义赋值呀,望具体代码指导!谢谢!

$left变量你没有定义,不会进入下面的分支啊。

 if(isset($left)){



请问根据上面的具体怎么定义赋值呀,望具体代码指导!谢谢!

     


extract($_POST); //加上这句
      function check_mysql(){

     


extract($_POST); //加上这句
      function check_mysql(){

您好 !现在 添加、更新、删除功能OK了!但是左右查询及查询关键字无法实现,还是不显示!请大神继续指导下, 谢谢!

可以了  谢谢版主!!

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