将JSON保存到文本文件

问题描述 投票:-2回答:1

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

_

php json ajax
1个回答
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);
© www.soinside.com 2019 - 2024. All rights reserved.