启动会话获取会话ID并将其写入数据库

Start session get session id and write it into database

我尝试创建一个小登录+调查并尝试将所有数据写入数据库。尤其重要的是,为每个用户获取一个会话 ID,以便将调查的每个页面的信息添加到数据库的右行。

我的问题在这里,似乎会话未启动或我无法创建会话 ID。在数据库中写入已经有效,但如果我包含有关会话的行则不行。

在 google 进行了很多总是让我得到相同答案(这对我不起作用)之后,我在这里尝试。这是我的代码,首先调用 callDatabase.php,在此文件中创建会话 ID 并创建数据库条目(idk,如果这是最好的解决方案,我想不是 xD):

<script type="text/javascript">
    $.post( 'callDatabase.php', { 'entry[]': ["init"]} );   
</script>

callDatabase.php:

<?php
    header('Content-Type: text/json');

    $test = $_POST['entry'];
    session_start();
    $sID = session_id();

    $timestamp = time();

    $servername = "local";
    $username = "root";
    $password = "rootpw";


    $conn = new mysqli($servername, $username, $password);
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }   
    mysqli_select_db($conn, 'myDb');
    $sql = "INSERT INTO myTable (sID, timestamp, t1, rating, start, end, color, fight, completed)
            VALUES ('$sID', '$timestamp', '-', '4', '_', '_', '_', '_', 'false')";

    mysqli_query($conn, $sql);


    mysqli_close($conn); 
    session_unset();
    session_destroy();  
    $_SESSION = array();
?>

就像我说的,没有会话的东西,它工作正常,有了它,浏览器永远是 运行,我的数据库中没有任何条目。由于我没有收到任何错误消息,因此我没有找到有关如何修复它的任何解决方案。 它在本地 运行,具有 XAMPP 和一个 mysql 数据库。

问题是由 Xampp 引起的,因为某些端口可能被阻止,代码正在与虚拟机、linux 和 apache 服务器以及 phpmyadmin 一起工作。检查错误日志将有助于查明问题是否由被阻止的端口引起。

要与 xampp 一起解决问题,建议停用所有可能阻止所需端口的工具(skype、通过 vpn 连接、防病毒工具...)或将端口更改为具有那里没有冲突。