php模拟登陆,跳转页面问题

我想用php模拟登陆一个网站,登陆后,在模拟执行一个搜索的操作(执行搜索操作时是跳转的另外一个页面来显示搜索出来的结果)。现在我遇到的问题是能够成功模拟登陆,但是模拟搜索... 我想用php模拟登陆一个网站,登陆后,在模拟执行一个搜索的操作(执行搜索操作时是跳转的另外一个页面来显示搜索出来的结果)。现在我遇到的问题是能够成功模拟登陆,但是模拟搜索时,当跳转到搜索页面就显示没有登陆的状态。请问各位大牛如何解决 展开
 我来答
flyrose25
2013-09-22 · TA获得超过181个赞
知道小有建树答主
回答量:524
采纳率:0%
帮助的人:218万
展开全部

  把你的登录信息保存在一个session中,如

login.php

<?php 

//  表单提交后... 

$posts = $_POST; 

//  清除一些空白符号 

foreach ($posts as $key => $value) {

    $posts[$key] = trim($value); 

$password = md5($posts["password"]); 

$username = $posts["username"]; 


$query = "SELECT `username` FROM `user` WHERE `password` = '$password' AND `username` = '$username'"; 

//  取得查询结果 

$userInfo = $DB->getRow($query); 


if (!empty($userInfo)) { 

    //  当验证通过后,启动 Session 

    session_start(); 

    //  注册登陆成功的 admin 变量,并赋值 true 

    $_SESSION["admin"] = true;  

} else { 

    die("用户名密码错误"); 

?>


  • 我们在需要用户验证的页面启动 Session,判断是否登陆:


<?php 

//  防止全局变量造成安全隐患 

$admin = false; 

//  启动会话,这步必不可少 

session_start(); 

//  判断是否登陆 

if (isset($_SESSION["admin"]) && $_SESSION["admin"] === true) { 

    echo "您已经成功登陆"; 

} else { 

    //  验证失败,将 $_SESSION["admin"] 置为 false

    $_SESSION["admin"] = false; 

    die("您无权访问"); 

?>

追问
没大看懂啊,"SELECT `username` FROM `user` WHERE `password` = '$password' AND `username` = '$username'"; 是在操作数据库吗?我只是模拟登陆,不涉及数据库啊
dchszsz
2013-09-22 · 超过12用户采纳过TA的回答
知道答主
回答量:47
采纳率:0%
帮助的人:32.1万
展开全部
设置一个cookie,登陆成功后把密码加密一下(简单的就md5一下)把密码存进一个cookie中,每次登入检查cookie
追问
我登陆成功是保存了cookie,跳转页面时就是用的这个cookie,但是跳转的页面还是显示没有登陆
追答
如果你用cookie就永不到session,用cookie验证的是跳转后的页面检查用户id,根据id从数据库中查找password,对比md5(password)与cookie得到是否登陆
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式