Powiedzmy, że mam tablicę obiektów javascript i próbuję przekazać te obiekty do strony php, aby zapisać je w bazie danych. Nie mam problemów z przekazywaniem zmiennej do php i używanie $ _POST ["entries"] dla tej zmiennej, ale nie mogę wymyślić jak przekazać całą tablicę obiektów, więc mogę uzyskać dostęp do moich wartości objects.entryId i .mediaType na stronie php.Jak przekazać tablicę obiektów javascript do php za pomocą POST
Aha, zanim ktokolwiek zapyta, tak, powód, dla którego muszę to zrobić w ten sposób, to dlatego, że mam program do przesyłania plików Flash, który zgadłeś. Wgrywa na serwer CDN (zdalny), a serwer zdalny odpowiada tylko z takie obiekty js.
Dzięki za pomoc, którą każdy może zapewnić.
Oto moje funkcje JS:
function test() {
entriesObj1 = new Object();
entriesObj1.entryId = "abc";
entriesObj1.mediaType = 2;
entriesObj2 = new Object();
entriesObj2.entryId = "def";
entriesObj2.mediaType = 1;
var entries = new Array();
entries[0] = entriesObj1;
entries[1] = entriesObj2;
var parameterString;
for(var i = 0; i < entries.length; i++) {
parameterString += (i > 0 ? "&" : "")
+ "test" + "="
+ encodeURI(entries[i].entryId);
}
xmlhttp.open("POST","ajax_entries.php",true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.setRequestHeader("Content-length", parameterString.length);
xmlhttp.setRequestHeader("Connection", "close");
xmlhttp.onreadystatechange = handleServerResponseTest;
xmlhttp.send(parameterString);
}
function handleServerResponseTest() {
if (xmlhttp.readyState == 4) {
if(xmlhttp.status == 200) {
alert(xmlhttp.responseText);
}
else {
alert("Error during AJAX call. Please try again");
}
}
}
btw ... przepraszam za linki! – coma