我不知道编程的正确术语或行话,所以如果这个问题不清楚,请原谅我。更清楚地说,这是我到目前为止写的代码。我将在代码后面更详细地解释这个问题:
我使用此代码从Facebook检索数据:
function rsvpEvent() {
FB.api('/me/events/', function(response) {
for (var i=0; i<=2; i++) {
eventname=response.data[i].name;
eventid=response.data[i].id;
eventstatus=response.data[i].rsvp_status;
eventInfo(eventname,eventid,eventstatus);
strEvent=strEvent + "You are " +
eventstatus + " " + eventname + ", EID: " + eventid + "<br/>";
}
document.getElementById('rsvpEvent').style.display = "block";
document.getElementById('rsvpEvent').innerHTML = strEvent;
});
}
对PHP文件的请求(包含mySQL调用):
function eventInfo(eventname,eventid,eventstatus) {
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("eventInfo").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","event_info.php?eventName=" + eventname + "&eid=" + eventid +
"&rsvp_status=" + eventstatus,true);
xmlhttp.send();
}
所以,问题是我需要存储单个事件的名称、id和状态以及当前的代码。我可以将它们单独输出到一个页面,但不能将它们单独发送到PHP文件。我该怎么做(假设这是可能的)?
最佳答案
对php脚本的ajax调用使用jQuery。
$.post('/somefile.php', myJSobjectOrArr, function(data) {
// return something from your script to say it succeeded or not...
console.log(data);
}
在php脚本中,只需检查$_POST变量和serialize()或json_encode()并将其弹出到数据库中。
只需取消序列化(unserialize)或json_decode()就可以恢复数据。