$str="select id from user where name='$name';";给字符串$str赋的值应该用""引起来.这里的单引号是用于sql语句的.
多贴点东西出来看看,或者如楼上的改一下 $str="select id from user where name='$name';";
insert into 表名 字段1,字段2,... values('值1','值2',...);
我在check.php中调用update_online但显示:数据库错误:1064You have an error in your SQL syntax near '2003-04-29 12:53:56')' at line 1我检测是insert语句错了!请问错在哪? function update_online($state_user,$name,$cryptname,$logintime)//更新在线用户 { global $db;
if($state_user=="enter") { $sql="delete from useronline where name='$name'"; $result=mysql_query($sql,$db) or db_error(); $cryptname=md5($name); $nowtime=date("Y-m-d H:i:s"); $sql="inser into useronline (name,cryptname,nowtime) values('$name','$cryptname,'$nowtime')"; $result=mysql_query($sql,$db) or db_error(); if(!$res) return ""; else return $cryptname; } if($state_user=="leave") { $sql="delete from useronline where cryptname='$cryptname'"; $result=mysql_query($sql,$db) or db_error(); if(!$result) return "null"; else return "success"; } } <? $host="localhost"; $admin="root"; $adminpasswd="root"; $db_name="chat"; $db=mysql_pconnect($host,$admin,$adminpasswd); mysql_select_db($db_name, $db);if(!empty($need)) { $self_info=check($name,$passwd); if($need=="login") { if(is_array($self_info)) { $cryptname=update_online("enter",$name,""); header("location:list.php?cryptname=$cryptname"); } else { $error="没有此用户或密码出错!"; $msg="history"; } } if($need=="reg"||$need=="mod") { $name=string_dowith($name); $passwd=string_dowith($passwd); $result=register($name,$passwd,$sex,$email,$need); if($result="success") { if($need=="reg") $cryptname=update_online("enter",$name,"",""); include "infouser.php"; exit; } else $error="已经存在的用户"; } } if(!empty($error)) { include "error.php"; exit; } ?>
$sql="inser into useronline (name,cryptname,nowtime) values('$name','$cryptname','$nowtime')";你在$cryptname后少跟了个单引号.
$str=select id from user where name='$name'这句命令写错了,应该是
$str="select id from user where name='".$name."'";
这是什么意思?
echo $str; //这样有什么自然就清楚了啊;不过,字符应该是要用双引或单引号括下来的,但双引中的变量会被解释,单引中的不会
$str="select id from user where name='$name';";
function update_online($state_user,$name,$cryptname,$logintime)//更新在线用户
{
global $db;
if($state_user=="enter")
{
$sql="delete from useronline where name='$name'";
$result=mysql_query($sql,$db)
or db_error();
$cryptname=md5($name);
$nowtime=date("Y-m-d H:i:s");
$sql="inser into useronline (name,cryptname,nowtime) values('$name','$cryptname,'$nowtime')";
$result=mysql_query($sql,$db)
or db_error();
if(!$res)
return "";
else return $cryptname;
}
if($state_user=="leave")
{
$sql="delete from useronline where cryptname='$cryptname'";
$result=mysql_query($sql,$db)
or db_error();
if(!$result)
return "null";
else return "success";
}
}
<?
$host="localhost";
$admin="root";
$adminpasswd="root";
$db_name="chat"; $db=mysql_pconnect($host,$admin,$adminpasswd);
mysql_select_db($db_name, $db);if(!empty($need))
{
$self_info=check($name,$passwd);
if($need=="login")
{
if(is_array($self_info))
{
$cryptname=update_online("enter",$name,"");
header("location:list.php?cryptname=$cryptname");
}
else
{
$error="没有此用户或密码出错!";
$msg="history";
}
}
if($need=="reg"||$need=="mod")
{
$name=string_dowith($name);
$passwd=string_dowith($passwd);
$result=register($name,$passwd,$sex,$email,$need);
if($result="success")
{
if($need=="reg") $cryptname=update_online("enter",$name,"","");
include "infouser.php";
exit;
}
else $error="已经存在的用户";
}
}
if(!empty($error))
{
include "error.php";
exit;
}
?>