Javascript 无法将本地存储上载到数据库
我有一些数据要存储在数据库中进行同步。以下是我的jQuery代码:Javascript 无法将本地存储上载到数据库,javascript,php,jquery,mysql,ajax,Javascript,Php,Jquery,Mysql,Ajax,我有一些数据要存储在数据库中进行同步。以下是我的jQuery代码: $(document).ready(function() { var local_array = []; for ( var i = 0, len = localStorage.length; i < len; ++i ) { local_array.push(localStorage.key(i)); local_array.push(localStorage.getItem(localSto
$(document).ready(function() {
var local_array = [];
for ( var i = 0, len = localStorage.length; i < len; ++i ) {
local_array.push(localStorage.key(i));
local_array.push(localStorage.getItem(localStorage.key(i)));
console.log(local_array);
}
$.ajax({
type: "POST",
url: "uploadtodatabase.php",
data: {data: local_array}
});
});
这是我的PHP代码:
<?php session_start();
$connection = new mysqli('host', 'name', 'password', 'database');
$username = $_SESSION['user'];
$username = $connection->real_escape_string($username);
$query = $connection->query("SELECT * from members WHERE username ='$username'");
$matches = mysqli_num_rows($query);
if ($matches == 1) {
$row = mysqli_fetch_array($query);
$visited = $_POST['data'];
$visited = $connection->real_escape_string($visited);
$connection->query("UPDATE members SET visited = '$visited' WHERE username ='$username'");
}
mysqli_close($connection);
?>
正如我在控制台中检查的那样,数据存储在本地_数组中。中的jQuery代码是footer.php。这就是我存储uploadtodatabase.php的位置。但是,footer.php会附加到可能不在同一目录中的其他文件中。这会导致问题吗?我以前从未使用过AJAX。所以,我可能在做一些愚蠢的事情,却根本没有注意到 您好,您已经完成了一半,只需解码php代码中的数组
if(!empty($_POST['data'])) {
$data = explode(',',$_POST['data']);
//code to store $data content
}
现在,您可以使用$data变量从localSotrage存储会话内容您必须对json对象进行字符串化,然后在服务器上对其进行解码。我看到您已经在使用MySQLi了,但为什么不使用预先准备好的语句呢?我正在一步一步地学习。我不是很聪明,我需要一些时间来理解发生了什么。一旦我清楚了MySQLi和AJAX的内容,我将开始学习PDO。我之前确实试过一次,但似乎很复杂。我很快会再试一次。@CharlotteDunois这里的JSON对象是什么。以及如何将其字符串化和解码。可以,请提供一个例子。我以前从未做过。谢谢