gpt4 book ai didi

javascript - 将整个 DOM 保存在 mysql 中

转载 作者:行者123 更新时间:2023-11-29 11:37:43 25 4
gpt4 key购买 nike

我不确定这是否可行,但我正在寻找一种方法来保存网页的整个状态,而无需将每个元素显式保存到数据库中。

例如,我动态创建按钮、复选框、文本等,直到网页看起来符合需要。我可以将 DOM 保存为字符串或数据库中的 blob,并稍后解析它以获取网页吗?

我尝试过以下方法:

var doc = document.documentElement.outerHTML;

然后将字符串保存到数据库,但不起作用。

我正在使用对 PHP 脚本的 AJAX 调用来写入 mysql:

jQuery.ajax({
type: "POST",
url: 'connect/database.php',
dataType: 'json',
data: {functionname: 'connect_to_database', arguments: [user_id, user, doc] },
success: function (obj, textstatus) {
if( !('error' in obj) ) {
}
else {
console.log(obj.error);
}
}
});

PHP 看起来像:

  // connection script
$servername = "XXX";
$username = "XXX";
$password = "XXX";
$dbname = "XXX";

$user_id = $_POST['arguments'][0];
$user = $_POST['arguments'][1];
$string = $_POST['arguments'][2];

// create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

$sql = "INSERT INTO table (user_id, user, string) VALUES ('$user_id', '$user', '$string')";
# $sql = "UPDATE crows_nest SET json_string='$configuration' WHERE user = '$user'";

if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();

最佳答案

使用准备好的语句来防止文档字符串中的特殊字符出现问题。

$stmt = $conn->prepare("INSERT INTO table (user_id, user, string) VALUES (?, ?, ?)");
$stmt->bind_param("iss", $user_id, $user, $string);
if ($stmt->execute()) {
echo "New record created successfully.";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}

关于javascript - 将整个 DOM 保存在 mysql 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36320448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com