gpt4 book ai didi

PHP 登录后不保存 $_SESSION 变量

转载 作者:搜寻专家 更新时间:2023-10-31 20:45:52 24 4
gpt4 key购买 nike

第一次来。希望这能奏效!

我是 PHP 的新手,正在尝试创建一个网站,用户可以在其中拥有自己的页面,其中包含他们可以编辑的内容。我让登录系统工作了一半。它可以正确识别用户名和密码,但它似乎没有存储 $_SESSION 变量。起初我以为这是因为我试图将用户名(本身是一个变量)设置为 $_SESSION 变量,但即使我将它设置为绝对变量,我检查用户是否登录的代码也会将它们重定向到“您尚未登录”页面。这是我的验证 php 代码:

<?php

$host="xxxx.ipagemysql.com";
$username="xxxxx";
$password="xxxxxx";
$db_name="farmers";
$tbl_name="users";

mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

$farmeruser=$_POST['farmeruser'];
$farmerpw=$_POST['farmerpw'];

$sql="SELECT * FROM ".$tbl_name." WHERE farmeruser='".$farmeruser."' and farmerpw='".$farmerpw."';";

$result=mysql_query($sql);

$count=mysql_num_rows($result);

if($count==1){

session_start();
$_SESSION['member'] = "affirmative";
header("location:succesful_login.php");
}
else {
echo "Wrong Username or Password";
}
?>

这是我的页面,它从未识别出用户已登录:

<?php
session_start();
if($_SESSION['member'] == "affirmative")
{
echo
"Welcome!";
}
else {
header('Location: http://www.leukosweb.com/user_not_recognized.php');
}
?>

为什么这不起作用的任何想法?

附言。我想将“肯定”更改为用户的登录名。如果你想帮助我使用登录验证页面中的变量来设置 $_SESSION 'member' 变量,那也很棒!

最佳答案

session_start()需要向用户的浏览器添加一个 cookie,如果您在第一个 <?php 之前有任何空间这将输出到浏览器并会搞砸设置 cookie。我会移动 session_start()到第二行

<?php
session_start();

并确保没有额外的空间你可以检查你的浏览器cookies,看看你是否有一个cookie PHP_SESSION或类似的,如果你

print session_start();

它应该返回 true如果能够创建 session - 如果不能,则 PHP 配置和创建 session 可能有问题。

这个也需要改正

header("location:succesful_login.php");

应该是

header("Location: succesful_login.php");

关于PHP 登录后不保存 $_SESSION 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13409468/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com