启动会话获取会话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 连接、防病毒工具...)或将端口更改为具有那里没有冲突。
我尝试创建一个小登录+调查并尝试将所有数据写入数据库。尤其重要的是,为每个用户获取一个会话 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 连接、防病毒工具...)或将端口更改为具有那里没有冲突。