0
我使用AJAX将值数组发送到PHP页面,该页面将数据插入MySQL数据库。问题是我不知道如何将数据分成5个不同的可执行文件并循环插入到数据库中。PHP分割字符串并在MySQL中插入
AJAX请求: 阵列:
[".testimonial", 1119, 316, 1663, 608, "#header", 723, 66, 1663, 608]
发布阵列:使用
发送数组参数 “;” 分裂。发送
clicks
.testimonial;1119;316;1663;608;#header;723;66;1663;608
来源:
clicks=.testimonial%3B1119%3B316%3B1663%3B608%3B%23header%3B723%3B66%3B1663%3B608
PHP页面
<?php
$clicks = $_GET["clicks"];
$clickArray = explode(";",$clicks);
$arrays = array_chunk($clickArray, 5);
foreach ($arrays as $array_num => $array) {
foreach ($array as $item_num => $item) {
echo "". $item . "<br/>";
}
}
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "clickmap";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO data (user_id, identifier_name, pos_x, pos_y, window_width, window_height, status)
VALUES ('1', '$postIdentifier', '$postPos_x', '$postPos_y','$postWindowWidth','$postWindowHeight', 'ok')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
当前PHP结果:
.testimonial
1119
316
1663
608
#header
723
66
1663
608
New record created successfully
什么?你为什么不直接发送JSON?并且使用JSON数组中的键名来简化PHP端。 – AbraCadaver
您在查询中使用的变量都没有被定义。所以你插入空字符串。然后没有任何你的json /数组操作的东西在查询中被使用,所以它都是无用的/无意义的代码。 –
@AbraCadaver现在我将尝试使用JSON。出于某种原因,我不认为它会起作用。 Marc B问题是如何在分割字符串并进行循环时定义它们。您的评论比代码更无用/毫无意义。 – Raddy