我有一张表格。用户在页面上添加标题和视频URL。此标题和URL由Javascript读取并制作为JSON。现在我的JSON需要以JSON格式保存到现有的myDB.txt文件中。我使用Ajax,PHP和Javascript。我无法找到我的错误,因为创建了JSON,我可以通过控制台日志查看它。但是,数据未保存在文本文件中。
有人可以帮我完成这项任务吗?
function jsonFunc() {
var nn = document.getElementById('videoName').value;
var vv = document.getElementById('videoUrl').value;
var obj = { "name": nn, "url" : vv };
var myJSON = JSON.stringify(obj);
console.log(myJSON);
function savePHPfunc(myJSON){
var x=new XMLHttpRequest();
x.open("GET", "save.php="+myJSON, true);
x.send();
}
}
<?php
$myfile = fopen("myDB.txt", "a") or die("Unable to open file!");
$txt = $_GET["myJSON"];
fwrite($myfile, $txt);
fclose($myfile);
?>
&#13;
<form>
<input type="text" name="videoName" id="videoName">Video name
<input type="text" name="videoUrl" id="videoUrl">Video
<button type="submit" onclick="jsonFunc()">Add video</button>
</form>
&#13;
_
答案 0 :(得分:0)
假设php没有真正被注释掉,问题似乎是javascript:
x.open("GET", "save.php="+myJSON, true);
您没有使用变量值发送密钥。它应该是这样的:
x.open("GET", "save.php?myJSON="+myJSON, true);
请注意,您还应对变量进行编码,以便可以安全地将其用作网址中的查询变量。您可以使用encodeURIComponent()
:
x.open("GET", "save.php?myJSON="+encodeURIComponent(myJSON), true);