php cookies错误 登录 电子邮件 密码 记得

php cookies错误 登录 电子邮件 密码 记得,php,cookies,Php,Cookies,这是我的代码,它获取用户数据,检查用户是否存在,并在用户浏览器上设置cookie。 当我检查cookie是否已设置时,我只能看到phpMyAdmin cookies,而不能看到我的用户ID cookie。您可以看到屏幕截图,浏览器被阻塞,并自动关闭 但是当我用setcookie('userId','$id')编辑setcookie函数时已设置cookie,但其值为%24id[$id]。那么,我如何在变量$row[id]的值中设置cookie?这是我的电脑或服务器的错误还是我的代码的错误? 当我在

这是我的代码,它获取用户数据,检查用户是否存在,并在用户浏览器上设置cookie。 当我检查cookie是否已设置时,我只能看到phpMyAdmin cookies,而不能看到我的用户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>
        &nbsp;Email
        <br>
        &nbsp;<input id="email" name="email" type="email" required>
        <br>
        &nbsp;Password
        <br>
        &nbsp;<input name="pass" type="password" required=required><br>
        &nbsp;<a href="recover.php">Forgot your password</a><br>

        <div id="submit">
            <input type="checkbox">&nbsp;Remember&nbsp;&nbsp;
            <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);


        }
    }
}
?>