php cookies错误 登录 电子邮件 密码 记得
这是我的代码,它获取用户数据,检查用户是否存在,并在用户浏览器上设置cookie。 当我检查cookie是否已设置时,我只能看到phpMyAdmin cookies,而不能看到我的用户ID cookie。您可以看到屏幕截图,浏览器被阻塞,并自动关闭 但是当我用php cookies错误 登录 电子邮件 密码 记得,php,cookies,Php,Cookies,这是我的代码,它获取用户数据,检查用户是否存在,并在用户浏览器上设置cookie。 当我检查cookie是否已设置时,我只能看到phpMyAdmin cookies,而不能看到我的用户ID cookie。您可以看到屏幕截图,浏览器被阻塞,并自动关闭 但是当我用setcookie('userId','$id')编辑setcookie函数时已设置cookie,但其值为%24id[$id]。那么,我如何在变量$row[id]的值中设置cookie?这是我的电脑或服务器的错误还是我的代码的错误? 当我在
setcookie('userId','$id')编辑setcookie函数时
已设置cookie,但其值为%24id
[$id]。那么,我如何在变量$row[id]的值中设置cookie?这是我的电脑或服务器的错误还是我的代码的错误?
当我在chrome上使用$id而不使用qoutes时,错误出现了
此网页不可用。localhost/mysite/mysite/userLogin.php上的网页可能暂时关闭,或者可能永久移动到新网址
cookies必须随标题一起发送
setcookie()定义要与其余HTTP头一起发送的cookie。与其他头一样,cookie必须在脚本的任何输出之前发送(这是协议限制)。这要求您在任何输出之前调用此函数,包括和标记以及任何空格
setcookie('userId',$id)
将起作用。$id
周围不需要引号。(当然,只要$id
不是空的。)但chrome以其他方式显示此网页不可用,位于的网页可能暂时关闭或永久移动到新网址。@DCoder:他实际上在使用mysqli
,但您的代码仍然容易受到SQL注入的攻击!阅读准备好的声明。
<form action=userLogin.php method=post>
<div id="login">
<div id="submit" class="h">Log In</div>
Email
<br>
<input id="email" name="email" type="email" required>
<br>
Password
<br>
<input name="pass" type="password" required=required><br>
<a href="recover.php">Forgot your password</a><br>
<div id="submit">
<input type="checkbox"> Remember
<div id="h">
<input type="submit" value="Log in"></div>
</div>
</div>
<?php
if (empty($_POST['pass']) == false) {
$uname = $_POST['email'];
$pass = $_POST['pass'];
include("config.php");
$query = $mysqli->query("SELECT * FROM user WHERE email='$uname' AND password='$pass'");
$numrows = mysqli_num_rows($query);
while ($row = mysqli_fetch_array($query)) {
if ($numrows == 0) {
?>
<script>
$(document).ready(function () {
$("#alert").fadeIn();
});</script>
<?php
}
else {
$id = $row[id];
setcookie('userId', $id);
}
}
}
?>