这个是我网站登陆论坛的代码,只是不知道cookie怎么设置?(就是相当于网站的记住密码的功能)请大家多多帮忙哦!//整合后登录论坛的代码
$act=(isset($_GET['act']))?$_GET['act']:"login";
if(function_exists($act)) $act();else login(); function login()
{
$ErrMsg=UserCheck();
if($ErrMsg!="")echo $ErrMsg;
}function UserCheck()
{
$passportkey="1234567890";//这里换成你论坛通行证设置的passportkey
//===========验证输入=====================
if(!isset($_POST['submit'])) return; // login表单的按钮需要与此同名
$usnm=trim($_POST['username']);//username换成你登陆表单里的用户名域
$pwd=trim($_POST['password']);//password换成你登陆表单里的密码域
if($usnm=="") return "请输入用户名!";
if($pwd=="") return "请输入密码!";
//=========数据库处理==========================
$db=mysql_connect("localhost", "root", "");
mysql_select_db("dushubao"); //此处没有set names gb2312,直接登录论坛
$sql="Select * from yonghu where username='".$usnm."' Limit 1";
$rs = mysql_query($sql,$db) ;
$row = mysql_fetch_array($rs);
if(!$row)return "该用户不存在";
if($row["pwd"]!=md5($pwd))return "密码错误";
mysql_free_result($rs);
//这个参数用来设置读书宝访问1表示成功0表示失败
echo "<script language='javascript'>external.invoke( 1,'useronline');</script>";
//==============header到bbs=====================
$member = array
(
'time' => time(),
'username' => $row["username"],
'password' => $row["pwd"],
'email' => $row["email"]
);
$auth = passport_encrypt(passport_encode($member), $passportkey);
setcookie("auth",$auth,($_POST["cookietime"]? time()+(int)$_POST["cookietime"] :0));
//setcookie("auth",$auth,($_POST["Cookie"]? time()+(int)$_POST["Cookie"] :0));
//setcookie("auth",$auth,(($_POST["Cookie"])&&($_POST["savepasswd"])? time()+(int)$_POST["Cookie"] :0));
$forward=$_POST['forward'];
//if($forward=="")$forward="../../index.php";
//if($forward=="")$forward="../../bbs";
if($forward=="")$forward="../../userinfo.php";
$verify = md5('login'.$auth.$forward.$passportkey);
$auth=rawurlencode($auth);
$forward=rawurlencode($forward);
header("Location: bbs/api/passport.php?action=login&auth=$auth&forward=$forward&verify=$verify");
}
$act=(isset($_GET['act']))?$_GET['act']:"login";
if(function_exists($act)) $act();else login(); function login()
{
$ErrMsg=UserCheck();
if($ErrMsg!="")echo $ErrMsg;
}function UserCheck()
{
$passportkey="1234567890";//这里换成你论坛通行证设置的passportkey
//===========验证输入=====================
if(!isset($_POST['submit'])) return; // login表单的按钮需要与此同名
$usnm=trim($_POST['username']);//username换成你登陆表单里的用户名域
$pwd=trim($_POST['password']);//password换成你登陆表单里的密码域
if($usnm=="") return "请输入用户名!";
if($pwd=="") return "请输入密码!";
//=========数据库处理==========================
$db=mysql_connect("localhost", "root", "");
mysql_select_db("dushubao"); //此处没有set names gb2312,直接登录论坛
$sql="Select * from yonghu where username='".$usnm."' Limit 1";
$rs = mysql_query($sql,$db) ;
$row = mysql_fetch_array($rs);
if(!$row)return "该用户不存在";
if($row["pwd"]!=md5($pwd))return "密码错误";
mysql_free_result($rs);
//这个参数用来设置读书宝访问1表示成功0表示失败
echo "<script language='javascript'>external.invoke( 1,'useronline');</script>";
//==============header到bbs=====================
$member = array
(
'time' => time(),
'username' => $row["username"],
'password' => $row["pwd"],
'email' => $row["email"]
);
$auth = passport_encrypt(passport_encode($member), $passportkey);
setcookie("auth",$auth,($_POST["cookietime"]? time()+(int)$_POST["cookietime"] :0));
//setcookie("auth",$auth,($_POST["Cookie"]? time()+(int)$_POST["Cookie"] :0));
//setcookie("auth",$auth,(($_POST["Cookie"])&&($_POST["savepasswd"])? time()+(int)$_POST["Cookie"] :0));
$forward=$_POST['forward'];
//if($forward=="")$forward="../../index.php";
//if($forward=="")$forward="../../bbs";
if($forward=="")$forward="../../userinfo.php";
$verify = md5('login'.$auth.$forward.$passportkey);
$auth=rawurlencode($auth);
$forward=rawurlencode($forward);
header("Location: bbs/api/passport.php?action=login&auth=$auth&forward=$forward&verify=$verify");
}
根据你写的代码,应该是在login()函数里面,function login()
{
$ErrMsg=UserCheck();
if($ErrMsg!="")echo $ErrMsg;
else
设置cookie;
#可用函数setcookie ( string name [, string value [, int expire [, string path [, string domain [, bool secure]]]]]
#注:给每个用户设置一个唯一的cookie,
} 这样在以后的页面里面就可以从$_COOKIE[]数组中取出cookie,根据cookie,识别用户。不用再次登陆