这可能同客户端的安全设置有关,如果IE浏览器的cookie被禁止了,你当然就得不到cookie得值了。
解决方案 »
- 如何让file_put_contents()函数获取不到文件的时候不终止php程序
- php parse error, unexpected $end 的奇怪问题
- 三角只剩一个了
- curl库的问题?
- exec 使用的问题和银行接口的问题,在线等待,急,小弟最后点分送完再送M
- 如果需要在模板文件中嵌套其它的.htm文件
- 有了解中国企业网的朋友吗?
- 问问大家是怎么处理大小写用户名的注册问题的
- 在php里 curl -F [email protected] 也可以这样的形式写?
- 如何将php函数传递到js使用
- 在iis下可以浏览php,不能再localhost下浏览,请问各位朋友是在那里出问题了。
- checkbox简单问题!
$DbName="Tab";
if ($con){
$db=mssql_select_db($DbName);
$query="Select stu_name from StudentView where Stu_Number='$xxname' and passwd='$xxpassword'";
$Sqlresult=mssql_query($query);
$row=mssql_fetch_row($Sqlresult);
if ($row[1]!='') {
setcookie("UserID",$xxname,time()+7200);
}
问题出在
if ($row[1]!='') {
==>
if ($row[0]!='') {
数组的元素是从下标0开始排的。
$SelStuCode=$HTTP_COOKIE_VARS["UserID"];
if ($SelStuCode=='') {
$SelStuCode=$_COOKIE['UserID'];
die("请重新登陆系统.");
}
?>
==>
<?
$SelStuCode=$_COOKIE['UserID'];
if ($SelStuCode=='') {
die("请重新登陆系统.");
}
?>
有的客户机上你有读出cookie值,证明你的写的程序没错。
你可以用session,IE的cookie关闭了也可以传值,session保密性很强,
因为它是在服务端执行的。
$user="用户名";
session_start();//初始化一个新的 Session,若该客户已在 Session 之 中,则连上原 Session。
session_register($user);//注册
if(session_is_registered($user)){//检查目前的 Session 之中是否已有指定的变数注册。参数 name 即为欲检查的变数名。成功则传回 true 值
echo "用户已登陆"}
else{
echo "你还没登陆";
}
这样就不用考虑IE的是否把cookie关闭了。