gpt4 book ai didi

javascript - 使用 PHP 和 Javascript 将文件保存到服务器

转载 作者:行者123 更新时间:2023-12-03 06:42:26 25 4
gpt4 key购买 nike

我有一个 Javascript 数据字符串,我想将其存储在我的服务器的文本文件中。

正常的做法是将数据发送到PHP介质文件中进行处理并进行文件存储部分。

这是我使用的代码,但看起来它根本没有运行,因为目标文件 matrice.txt 仍然是空白:

script.js

function finalCoords() {

for(var i = 0; i < sort_data.length; i++) {
matrix = [data.nodes[i].name, sort_data[i].x, sort_data[i].y, sort_data[i].z]; /* This data is collected from other arrays */
var matrixStr = matrix.join(" "); /* This is the string I want to store */
console.log(matrixStr);

$.ajax({
url: "matrice.php", /* This is the PHP Medium */
data : matrixStr,
cache: false,
async: true,
type: 'post',
timeout : 5000
});
}
}

ma​​trice.php

<?php
$file="matrice.txt"; /* This is the destination file */
$text=serialize($_POST);
$fh = fopen($file, 'a') or die();
fwrite($fh, $text."\n");
fclose($fh);
?>

问题是什么以及如何解决它?

谢谢!

最佳答案

首先要注意的是:您调用回调的次数与 sort_data 数组上元素的数量一样多,我认为这不是预期的功能。

此外,您应该真正检查您的 ajax() 调用是否成功。根据documentation,Ajax 调用有一个参数method(而不是type)。 .

最后,您可以使用单行代码写入文件...

那么,让我们把它们放在一起:

脚本.js

function finalCoords() {
var matrix = [];
for(var i = 0; i < sort_data.length; i++) {
matrix.push([data.nodes[i].name, sort_data[i].x, sort_data[i].y, sort_data[i].z]); /* This data is collected from other arrays */
}
var matrixStr = matrix.join(" "); /* This is the string I want to store */
console.log(matrixStr);

$.ajax({
url: "matrice.php", /* This is the PHP Medium */
data: matrixStr,
cache: false,
async: true,
method: 'POST',
timeout : 5000
})
.done(function() {
console.log("success");
})
.fail(function() {
console.log("error");
})
.always(function() {
console.log("complete");
});
}

matrice.php

<?php
$file = "matrice.txt"; /* This is the destination file */
$text = serialize($_POST);
file_put_contents($file, $text);
?>

这应该可以解决问题并告诉 ajax 调用是否有任何错误。

编辑

从 charlietfl 的评论中得到启发(谢谢,顺便说一句),我们应该获取原始帖子数据:

<?php
$file = "matrice.txt"; /* This is the destination file */
$text = file_get_contents('php://input');
file_put_contents($file, $text);
?>

关于javascript - 使用 PHP 和 Javascript 将文件保存到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37896852/

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