<?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>)');
}
}
?>
------解决方案--------------------
- PHP code
<?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(); } ?>
------解决方案--------------------
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啥的两边需加引号''
到此你定会知道为啥没有输出内容了
------解决方案--------------------
echo 只能输出字符串和数字,
mysql_query();返回值是资源类型,当然输不出来
用var_dump就可以输出了 ,要看结果要使用函数处理返回的资源
------解决方案--------------------
返回false表示你的SQL语句有问题,没成功执行
给后面加上一句 echo mysql_error();