PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AJAX send problem


The Serious Sam
01.08.2008, 14:36:57
Ich habe ein Ajax Problem^^

ich mache einen Request an eine PHP datei und lade diese in einen div-container.
soweit so gut!

nun möchte ich get-variablen per http_reqquest.send() übergeben.
und das klappt leider gar nicht!

hier mein code:

<script type="text/javascript" language="javascript">

var http_request = false;

function macheRequest(div, data) {

http_request = false;

if (window.XMLHttpRequest) {
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');
}
} else if (window.ActiveXObject) {
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}

if (!http_request) {
alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');
return false;
}
http_request.onreadystatechange = function() {
changeInhalt(div);
};
http_request.open('GET', 'http://localhost/Projekte/Ajax/content.php', true);
http_request.send(data);

}

function changeInhalt(div) {

if (http_request.readyState == 4) {
if (http_request.status == 200) {

element = document.getElementById(div);
element.innerHTML = http_request.responseText;

} else {
alert('Es ist ein Problem aufgetreten.');
}
}

}
</script>

<div id="menu">
<a href="javascript:macheRequest('content', 'a=b&c=d');">Kapitel 1</a>
<a href="javascript:macheRequest('content', 'e=f&g=h');">Kapitel 2</a>
<a href="javascript:macheRequest('content', 'i=j&k=l');">Kapitel 3</a>
</div>

<div id="content">

</div>

die content.php

<?php

print_r($_GET);

?>

Ausgabe:

Kapitel 1 Kapitel 2 Kapitel 3

Array
(
)


weiß jemand woran das liegen könnte?

PS: wenn ich den request per POST mache, funktioniert es wunderbar!

CPA
01.08.2008, 15:16:42
Wenn du Variablen per GET übergeben willst, solltest das auch beim Aufrufen der entsprechenden Seite auch per GET übergeben ;)

Dein Code:

http_request.open('GET', 'http://localhost/Projekte/Ajax/content.php', true);
http_request.send(data);


So Sollte es Aussehen bei Aufruf mit GET


http_request.open('GET', 'http://localhost/Projekte/Ajax/content.php?'+data, true);

The Serious Sam
01.08.2008, 15:20:18
Ahhh danke für deine Hilfe! funktionier jetzt wunderbar