php中用户登录时将用户名保存为$_SESSION['username']

之后判断$_SESSION['username']的值是否与数据库中的值相等,如果相等就删除该用户的所有信息,主要代码如下
include "conn.php";
$qin="delete from online where name=".$_SESSION['username'];
mysql_query($qin);
在不加where的情况下可以实现,加了之后就实现不了了,怎么回事啊,
备注:我间隔一会会换一个用户名进去的

name是字符串类型.sql语句需要加单引号!
可以这样
include "conn.php";
$qin="delete from online where name='{$_SESSION['username']}'";
mysql_query($qin);
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-20
name是文本类型字段。需加单引号
第2个回答  2012-05-20
改一改
$qin="delete from online where name=".$_SESSION['username'];
改为
$qin=sprintf("delete from online where name='%s' ",$_SESSION['username']);
(其实是引号的问题)
第3个回答  2012-05-20
$qin="delete from online where name='".$_SESSION['username']."'";