燕秀工具箱 装不上:关于制作网站登陆

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/10 20:01:14
老师布置一个作业,模拟EBAY,第一步是需要登陆。
1、请问登陆后的信息如何保存在cookies中呢?也就是说,只要用户登陆一次,浏览器就可以一直为这个用户提供服务,就好像百度知道一样。
2、有一些页面是只要登陆后的会员才能看到的,如何对这些页面进行保护呢?如果有人没有登陆,直接在地址栏输入这个页面的URL,应该弹出一个对话框,或者连接到登陆的页面,让用户登陆。
谢啦,我用的是PHP。
关于第二个问题,好像你直接访问某些网站的某些地址,他会跟你说Forbidden,这又是怎么实现的呢?

问题1:
<?
require "config.php";
$pwd=$password;
$sql="select adminid,adminname,adminpwd,realname,level,priviage from guest where adminname='$username' and adminpwd='$password'";
$res=mysql_query($sql);
if(mysql_num_rows($res)!=1)
{
echo "用户名或密码错误";
echo "<meta http-equiv=refresh content=2;url='login.htm'>";
exit;
}
$row=mysql_fetch_array($res);
setcookie("cookie_rootid","$row[0]",time()+3600); //保存编号
setcookie("cookie_rootname","$row[1]",time()+3600); //保存用户名
setcookie("cookie_rootpwd","$row[2]",time()+3600); //保存密码
setcookie("cookie_rootrealname","$row[3]",time()+3600); //保存真实姓名
setcookie("cookie_rootlevel","$row[4]",time()+3600); //保存等级
setcookie("cookie_rootpriviage","$row[5]",time()+3600); //保存权限
echo "<meta http-equiv=refresh content=0;url='admin_index.php'>";
?>

问题2:
在每个想保护的页面放上这句require "checkadmin.php";

如下是checkadmin.php的内容.
<?php
require "config.php";
if(empty($cookie_rootid)==true||empty($cookie_rootname)==true||empty($cookie_rootpwd)==true||empty($cookie_rootrealname)==true||empty($cookie_rootpriviage)==true)
{
echo "<meta http-equiv=refresh content=0;url='login.htm'>";
exit;
}
$sql="select adminid,adminname,adminpwd,realname,level,priviage from guest where adminid=$cookie_rootid and adminname='$cookie_rootname' and adminpwd='$cookie_rootpwd' and realname='$cookie_rootrealname' and level='$cookie_rootlevel' and priviage='$cookie_rootpriviage'";
$res=mysql_query($sql);
if(mysql_num_rows($res)!=1)
{
echo "您使用的信息不存在,请重新登陆!";
echo "<meta http-equiv=refresh content=2;url='login.htm'>";
exit;
}
unset($res);
?>

有问题可以再提!!!

我也是曾经遇到你这种问题!!

终于自己搞明白了!!

只要一次你就成为专家的!!

放心吧!!!

不懂就问!!!!!