<?php
        $query="select * from user";
        $results=mysql_query($query);
        while(@$r=mysql_fetch_array($results)){ 
        echo htmtocode($r['userid']);
        echo " "?>
        <a href="?action=delete&userid=<?=$r['userid']?>">delete</a>
        <br />
        <?php 
        }
        ?>
        <?php
        if(@$_GET['action']=='delete'){
        $s="select from user where userid=$_GET[userid]";
        echo mysql_query($s);
        die();
        if(mysql_query($s)){
       
        exit('<script language="javascript">alert("删除成功!");self.location = "admin.php";</script>)');
        }
        }
        ?>

解决方案 »

  1.   

    <?php
      $query="select * from user";
      $results=mysql_query($query);
      if( ! $results)
          die("SQL: {$query} error: " . mysql_error() );
      while( $r=mysql_fetch_array($results) )
      {  
          echo htmtocode($r['userid']);
          echo " ";
      ?>
          <a href="?action=delete&userid=<php echo $r['userid']; ?>">delete</a>
          <br />
      <?php  
      }
      ?>  <?php
      if($_GET['action']=='delete'){
         if( ! isset($_GET['userid']) )
             exit('userid 为空,放弃操作');
         $userid = trim( $_GET['userid'] );
         // 我不明白删除操作用select做什么?
         $s="select * from `user` where userid = '{$userid}'";
         // echo 只对字符串和数字有效,调试的话用var_dump()
         var_dump( $result = mysql_query($s) );      if( $result ){
              exit('<script language="javascript">
                    alert("删除成功!");
                    self.location = "admin.php";
                    </script>');
         }else
             echo "mysql error:". mysql_error();
      }
    ?>
      

  2.   

    输出sql看看,或者  $s="select from user where userid=".$_GET[userid];
      

  3.   

    if(@$_GET['action']=='delete'){
    $s="select from user where userid=$_GET[userid]";
    echo mysql_query($s);
    die();
    你写的这三句
    改为这样
    if(@$_GET['action']=='delete'){//确认这个条件满足,进入了循环
    $s="select from user where userid=$_GET[userid]";//
    echo $s."<br />";//输出语句内容,也查一下运行到此步没有,可以单独到数据库里查一下看有值没
    echo mysql_query($s);//query返回的只是成功不成功并不是查得的内容
    die();//语句到此句就中止了
    要注意你的userid是不是int型,若是text或是char啥的两边需加引号''
    到此你定会知道为啥没有输出内容了
      

  4.   

    echo 只能输出字符串和数字,
    mysql_query();返回值是资源类型,当然输不出来
    用var_dump就可以输出了 ,要看结果要使用函数处理返回的资源
      

  5.   

    哦是 $s="delete from user where userid = $_POST[userid]";
             var_dump( $result = mysql_query($s) ); 可是输出的总是false
      

  6.   

    返回false表示你的SQL语句有问题,没成功执行
    给后面加上一句 echo mysql_error();
      

  7.   

    Unknown column 'a' in 'where clause'