我需要在服务器端存储数据。我尝试对 PHP 进行 Ajax 调用: 上传.html:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<style>
#test{
padding:20px 50px;
background:#ccc;
color:#000;
}
</style>
<script>
$(function(){
$('#test').click(function(){
$.ajax({
url: "http://localhost:8012/myFolder/upload.php",
type : 'POST',
data: {"foo": "bar"},
processData: false,
contentType: 'application/json'
});
});
});
</script>
</head>
<body>
<button id="test">KLICK</button>
</body>
</html>
上传.php:
<?php
$myFile = "testFile.txt";
$fh = fopen($myFile, 'w');
fwrite($fh,$_POST['data']);
fwrite($fh,$_POST['foo']);
fwrite($fh,$_POST["foo"]);
fwrite($fh,$_POST[foo]);
fclose($fh);
?>
但是它不起作用。数据没有写入testFile.txt。 我会感谢你的帮助。 提前致谢。
最佳答案
不,JavaScript 无法访问写入文件,因为这至少会带来巨大的安全风险。
如果您想在服务器端获取/存储信息,您当然可以对 PHP/ASP/Python/等进行 Ajax 调用。然后可以在服务器中获取/存储数据的脚本。如果您的意思是在客户端计算机上存储数据,则仅使用 JavaScript 是不可能的。
如果您只是想在一段不可靠的时间内存储有关特定用户的少量信息,我认为您需要 cookie。
更新:
下面是您正在寻找的简单代码。有一个包含四个字段的简单表单。单击“提交”后,它会调用服务器文件,并且该 PHP 文件将包含将数据写入文件的代码。
$("#submit").click(function(){
var paramsToSend = {};
var i = 1;
$("input[name='myanswer[]']").each(function(){
paramsToSend[i] = $(this).val();
i++;
});
$("#dataToSend").html(JSON.stringify(paramsToSend));
$.ajax({
type: "POST",
url: 'URL_HERE/post.php',
data: {params:JSON.stringify(paramsToSend)},
success: function(data) {
console.log("SUCCESS!!!");
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="inputsl">
<div class="inputt"><input type="text" id="createmyanswer" name="myanswer[]" class="myinput"></div>
<div class="inputt"><input type="text" id="createmyanswer" name="myanswer[]" class="myinput"></div>
<div class="inputt"><input type="text" id="createmyanswer" name="myanswer[]" class="myinput"></div>
<div class="inputt"><input type="text" id="createmyanswer" name="myanswer[]" class="myinput"></div>
</div>
<button id="submit">
Submit
</button>
<div id="dataToSend"></div>
PHP 代码可以是:
file_put_contents('filename.txt', $_POST['params']);
关于javascript - 如何使用 javascript 在没有 ActiveXObject 的情况下将数据写入文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43891077/