gpt4 book ai didi

PHP-MySql-设置 cookie 不起作用

转载 作者:行者123 更新时间:2023-11-30 01:18:35 24 4
gpt4 key购买 nike

<?php
$utype = $_POST['type'];
$username=$_POST['username'];
$pre = $_POST['pre'];
$fname = $_POST['fname'];
$fname = ucwords($fname);
$lname = $_POST['lname'];
$lname = ucwords($lname);
$address = $_POST['address'];
$city = $_POST['city'];
$city = ucwords($city);
$province=$_POST['province'];
$pcode = $_POST['pcode'];
$pcode = mb_strtoupper($pcode);
$area_code = $_POST['area_code'];
$number1= $_POST['number1'];
$number2= $_POST['number2'];
$phnum = "(".$area_code.")".$number1."-".$number2;
$email = $_POST['nemail'];
$opass=$_POST['pass1'];
$pass = md5($_POST['pass1']);
$time=date("F j, Y");
$status="Not Activated";
if($email=="" || $username=="" || $fname=="" || $lname=="" || $address=="" or $pass==""){ die("<script language='JavaScript'>
window.alert('Not Enough Data Provided!')</script>
<meta http-equiv='REFRESH' content='0; r egister.php'>");;
}
include 'db_connect.php';
$sql = "select * from estatedeal_login where username = '".strtolower($username)."' OR email = '".strtolower($email)."'";

$result=mysql_query($sql);
$row=mysql_fetch_array($result);
if($row){
die("<script language='JavaScript'>
window.alert('Username/E-mail address already Exists!')</script>
<meta http-equiv='REFRESH' content='0; register.php'>");;
}


$sql="INSERT INTO estatedeal_login (username, email, password, utype, opass, time, status)
VALUES ('$username', '$email', '$pass', '$utype', '$opass', '$time', '$status')";

$result=mysql_query($sql);
if($result){
$sql2="Select uid from estatedeal_login where email='$email' AND password='$pass'";
$result2=mysql_query($sql2);
$row=mysql_fetch_array($result2);
$uid=$row["uid"];



$sql3="INSERT INTO estate_userinfo(uid, pre, fname, lname, address, city, province, pcode, phnum, email) VALUES ('$uid', '$pre', '$fname', '$lname', '$address', '$city', '$province', '$pcode', '$phnum', '$email')";
$result3=mysql_query($sql3) or die("<script language='JavaScript'>
window.alert('Sorry, Database Error!')</script>
<meta http-equiv='REFRESH' content='0; register.php'>");;
if ($result3){

$hour = time() + 3600*2;
setcookie('USERNAME_COOKIE', $email, $hour);
setcookie('PASSWORD_COOKIE', $pass, $hour);
if($utype=="Realtor"){ die("<meta http-equiv='REFRESH' content='0; regRealtor.php'>");; }
echo "<script language='JavaScript'>
window.location ='main.php';</script>";
}
}
else{
die(mysql_error());
}
?>

上面是我的代码。它在 mysql 中正确插入数据字段,但不会在客户端设置 cookie。如果我尝试使用在数据库中插入的信息登录,则用于设置 cookie 的相同代码在登录页面上可以正常工作。还有更多设置 cookie 的选项吗?

    $hour = time() + 3600*2; 
setcookie('USERNAME_COOKIE', $email, $hour);
setcookie('PASSWORD_COOKIE', $pass, $hour);

最佳答案

不是您问题的直接答案,但可能有用:

您可以使用SESSION代替cookie,看看这个问题:Cookie VS Session .

您可能还想看看 UserCake它使用SESSION来实现用户管理。以下是 UserCake (login.php) 的片段:

      //Passwords match! we're good to go'

//Construct a new logged in user object
//Transfer some db data to the session object
$loggedInUser = new loggedInUser();
$loggedInUser->email = $userdetails["email"];
$loggedInUser->user_id = $userdetails["id"];
$loggedInUser->hash_pw = $userdetails["password"];
$loggedInUser->title = $userdetails["title"];
$loggedInUser->displayname = $userdetails["display_name"];
$loggedInUser->username = $userdetails["user_name"];

//Update last sign in
$loggedInUser->updateLastSignIn();
$_SESSION["userCakeUser"] = $loggedInUser;

至少对我来说,这比调用 setcookie('USERNAME_COOKIE', $email, $hour); 感觉干净得多。

关于PHP-MySql-设置 cookie 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18810015/

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