I';我无法传递会话变量。它在本地主机上工作,但在服务器上不工作。(PHP 7.4)
这是login.php 使用本地主机,我的网站工作正常。但是,在服务器上它不工作。 该网站正在与数据库连接并检查用户、电子邮件、密码,但会话未启动。 我已经从localhost和server上检查了PHP版本。它们是同一版本的PHP7.4。 我不知道如何解决这个问题,如果你知道如何解决它,我已经支付了一些有更多经验的人来解决它。但他们没有修复。所以如果你能帮我解决这个问题,请联系我,我们可以协商 谢谢大家I';我无法传递会话变量。它在本地主机上工作,但在服务器上不工作。(PHP 7.4),php,html,mysql,session,Php,Html,Mysql,Session,这是login.php 使用本地主机,我的网站工作正常。但是,在服务器上它不工作。 该网站正在与数据库连接并检查用户、电子邮件、密码,但会话未启动。 我已经从localhost和server上检查了PHP版本。它们是同一版本的PHP7.4。 我不知道如何解决这个问题,如果你知道如何解决它,我已经支付了一些有更多经验的人来解决它。但他们没有修复。所以如果你能帮我解决这个问题,请联系我,我们可以协商 谢谢大家 require_once 'php/dbconfig.php'; class USE
require_once 'php/dbconfig.php';
class USER
{
private $conn;
public function __construct()
{
$database = new Database();
$db = $database->dbConnection();
$this->conn = $db;
}
public function runQuery($sql)
{
$stmt = $this->conn->prepare($sql);
return $stmt;
}
public function register($fname, $mname, $lname, $uname, $dob, $pnumber, $streetname, $number, $city, $state, $postcode, $country, $umail, $upass, $usertype )
{
try
{
$new_password = password_hash($upass, PASSWORD_DEFAULT);
$stmt = $this->conn->prepare("INSERT INTO customers(FName,MName, LName, UserName, DOB, PNumber, StreetName, Number, City, State, PostCode, Country, Email, Password, UserType)
VALUES(:fname, :mname, :lname, :uname, :dob, :pnumber, :streetname, :number, :city, :state, :postcode, :country, :umail, :upass, :usertype)");
$stmt->bindparam(":fname", $fname);
$stmt->bindparam(":mname", $mname);
$stmt->bindparam(":lname", $lname);
$stmt->bindparam(":uname", $uname);
$stmt->bindparam(":dob", $dob);
$stmt->bindparam(":pnumber", $pnumber);
$stmt->bindparam(":streetname", $streetname);
$stmt->bindparam(":number", $number);
$stmt->bindparam(":city", $city);
$stmt->bindparam(":state", $state);
$stmt->bindparam(":postcode", $postcode);
$stmt->bindparam(":country", $country);
$stmt->bindparam(":umail", $umail);
$stmt->bindparam(":upass", $new_password);
$stmt->bindparam(":usertype", $usertype);
$stmt->execute();
return $stmt;
}
catch(PDOException $e)
{
echo $e->getMessage();
}
}
public function doLogin($uname,$umail,$upass)
{
try
{
$stmt = $this->conn->prepare("SELECT CustomerID, UserType, UserName, FName, LName, Email, Password FROM customers WHERE UserName=:uname OR Email=:umail");
$stmt->execute(array(':uname'=>$uname, ':umail'=>$umail,));
$userRow=$stmt->fetch(PDO::FETCH_ASSOC);
if($stmt->rowCount() == 1)
{
if(password_verify($upass, $userRow['Password']))
{
$_SESSION['user_session'] = $userRow['CustomerID'];
$_SESSION['user_name']= $userRow['UserName'];
$_SESSION['user_fname']= $userRow['FName'];
$_SESSION['user_lname']= $userRow['LName'];
$_SESSION['user_usertype']= $userRow['UserType'];
return true;
}
else
{
return false;
}
}
}
catch(PDOException $e)
{
echo $e->getMessage();
}
}
public function is_loggedin()
{
if(isset($_SESSION['user_session']))
{
return true;
}
}
public function redirect($url)
{
header("Location: $url");
}
public function doLogout()
{
session_destroy();
unset($_SESSION['user_session']);
return true;
}
}
?>
添加会话_start();这一页的开头
<?php
session_start(); //add this line
require_once 'php/dbconfig.php';
欢迎来到Stackoverflow。请使用编辑器正确格式化代码,这是不可读的。