Kullanıcının bir popup penceresi gördüğü düğmelerini tıklatarak, üç "Bağlantı Ekle" düğmesinin 3 olduğunu gösteren bir test.php sayfam var. Pencerede bağlantıyı ekler. Bağlantı eklendiğinde, taban sayfası "Bağlantı ekle" düğmesinden yeni bağlantıyla köprüye dönüşür. Şimdi, bir ajax çağrısı kullanarak test.php'den links.php'ye kullanıcıdan aldığım yeni bağlantıyı geçmem gerekiyor. Links.php, bağlantıyı first.json adında başka bir dosyaya yazacak bir JSON koduna sahip olmalıdır. first.jason değişken ve link için anahtar değer çiftine sahip olacaktır. .json dosyasından daha sonra değeri almak ve bir dizi halinde yeniden oluşturmak, ilgili değişkeni güncellemek ve geri kaydetmek zorunda kalırdım.PHP dosyasından bir json dosyasına veri yazma
Şimdiye kadar var, test.php adresinden yeni bağlantıyı almayı başardım ve ajax çağrısı ile links.php aracılığıyla gönderebildim. Aynı zamanda aldığım ve görüntülediğim bağlantıyı da görüntüleyebiliyorum. Şimdi, bağlantıyı .json dosyasına anahtar bir vale çifti olarak kopyalamak istiyorum. Ben json için yeni ve bu konuda nasıl gidileceğini anlayamıyorum. Benim değişken $ p, links.php içinde link var.
Aynı şekilde herhangi bir işaretçi yardımcı olacaktır. Teşekkürler. Aşağıda
test.php benim kodudur:<?php
include 'test.php';
$p=$_REQUEST['q'];
?>
: Aşağıda
<!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>
değerini aldığında links.php kodudur (yani bağlantı) test.php ajax arama yoluyla gönderir
json_encode kullanarak json dosyasına yazabiliyorum. Şimdi linki .json dosyasından okumalı, ilgili değişkeni ilişkilendirmeli ve geri kaydetmeliydim. Bunun için nasıl giderim?
kodunuzu göster yararlıdır. – msanford
PHP dosyasını i/o yapmak mı istiyorsunuz? javascript'inizi ve ajax'ınızı başarıyla tamamladığınıza benziyor. Bu bağlantı şu yönde gitmenizi sağlamalıdır: http://www.tutorialspoint.com/php/php_files.htm – MaxPRafferty