来宾会话 - 脚本添加,但不设置会话


Session for guests - script adds, but doesn't set session

您好,我想为客人设置会话,我编写了应该这样做的脚本,它确实如此,但只有插入表格部分...我不知道为什么脚本不想设置会话,如果他有所有信息。

<?php
    session_start();
    if(!isset($_SESSION['user_id']))
    {
        if(isset($_COOKIE['user_id']))
        {
            $_SESSION['user_id'] = $_COOKIE['user_id'];
        }
        else
        {
            date_default_timezone_set('Europe/Zagreb');
            $dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
            $ip = $_SERVER['REMOTE_ADDR'];
            $time = date("Y-m-d G:i:s");
            $query = "INSERT INTO table (ip, join_date) VALUES ('$ip', '$time')";
            mysqli_query($dbc, $query);
            $query2 = "SELECT user_id, ip, join_date WHERE ip = '$ip' AND join_date = '$time'";
            $data = mysqli_query($dbc, $query2);
            if(mysqli_num_rows($data) == 1)
            {
                $row = mysqli_fetch_array($data);
                $_SESSION['user_id'] = $row['user_id'];
                setcookie('user_id', $row['user_id'], time() + (60 * 60));
            }

            mysqli_close($dbc);
        }
    }
?>

在第二个查询中缺少FROM。脚本不知道你指的是哪个表。

如果我没看错,您想获取最后一个查询的插入 id?然后,您可以使用函数mysqli_insert_id($dbc)获取最后一个自动增量 id。