将JSON保存到文本文件

时间:2018-01-24 11:04:19

标签: php json ajax

我有一张表格。用户在页面上添加标题和视频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;
&#13;
&#13;

_

1 个答案:

答案 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);