我有一個test.php頁面,顯示三個有3個「添加鏈接」按鈕,點擊按鈕後,用戶看到一個彈出窗口。在窗口中他添加了鏈接。添加鏈接後,基頁將從「添加鏈接」按鈕更改爲新鏈接的超鏈接。現在,我必須使用ajax調用將我從test.php用戶接收到的新鏈接傳遞給links.php。 Links.php必須有一個JSON代碼才能將鏈接寫入另一個名爲first.json的文件。 first.jason將有變量和鏈接的關鍵值對。我將不得不稍後從.json文件中檢索值並重建爲一個數組,然後更新相應的變量並將其保存回去。從PHP文件將數據寫入json文件
我到目前爲止,設法從test.php獲得新的鏈接,並能夠通過ajax調用發送相同的links.php。我也能夠顯示我收到的鏈接並驗證了相同的鏈接。現在,我想將鏈接複製到.json文件中作爲關鍵值對。我對json很陌生,無法弄清楚如何去做。我的變量$ p,在links.php中有鏈接。
同樣的任何指針都會有所幫助。謝謝。
下面是我在test.php的代碼:
<!DOCTYPE html>
<html>
<body>
<div id="demos1">
<button id="demo1" onclick="Link1()">Add Link-1</button>
<br>
</div>
<div id="demos2">
<button id="demo2" onclick="Link2()">Add Link-2</button>
<br>
</div>
<div id="demos3">
<button id="demo3" onclick="Link3()">Add Link-3</button>
<br>
</div>
<div id="txtHint"></div>
<script>
function Link1()
{
var demo1 = document.getElementById('demo1');
var demos1 = document.getElementById('demos1');
var value1 = prompt("Please Enter the Link");
var link1 = document.createElement('a');
link1.setAttribute('href', value1);
link1.innerHTML = "New Link1";
demo1.parentNode.removeChild(demo1);
demos1.appendChild(link1);
sendlink(value1);
}
function Link2()
{
var demo2 = document.getElementById('demo2');
var demos2 = document.getElementById('demos2');
var value2 = prompt("Please Enter the Link");
var link2 = document.createElement('a');
link2.setAttribute('href', value2);
link2.innerHTML = "New Link2";
demo2.parentNode.removeChild(demo2);
demos2.appendChild(link2);
sendlink(value2);
}
function Link3()
{
var demo3 = document.getElementById('demo3');
var demos3 = document.getElementById('demos3');
var value3 = prompt("Please Enter the Link");
var link3 = document.createElement('a');
link3.setAttribute('href', value3);
link3.innerHTML = "New Link3";
demo3.parentNode.removeChild(demo3);
demos3.appendChild(link3);
sendlink(value3);
}
function sendlink(str)
{
if (str.length==0)
{
document.getElementById("txtHint").innerHTML="hello";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","links.php?q="+str,true);
xmlhttp.send();
}
</script>
</body>
</html>
下面是接收值links.php的代碼(即,連接)的test.php的發送通過AJAX調用:
<?php
include 'test.php';
$p=$_REQUEST['q'];
?>
我能夠使用json_encode寫入json文件。現在我必須從.json文件讀取鏈接,將它與相應的變量相關聯並保存。我將如何去做這件事?
顯示你的代碼。 – msanford
你想要做PHP文件I/O嗎?這聽起來像你已經成功完成了所有的JavaScript和Ajax。這個鏈接應該讓你朝着這個方向前進:http://www.tutorialspoint.com/php/php_files.htm – MaxPRafferty