Hallo Leute,
wollte das eigentlich alleine hinkriegen, aber ich weiß nicht mehr weiter
Meine Probleme:
- Ich kriege den Fehler aus der php-datei wenn ich mit get senden will
- wenn ich in meiner javascript-datei unten die ID wohin der inhalt soll, dynamisch mache und this.target_id einsetzte passiert nix mehr. Dort funktioniert irgendwie nur ein string
index.php
HTML
<!DOCTYPE html>
<html>
<head>
<title>phip</title>
<meta charset="UTF-8" />
<script src="phip.js"></script>
<script>
function ajax_navigation(method)
{
var ajax_1 = new phip_ajax_objekt('test.php', method, 'page', 'news', 'hallo');
}
</script>
</head>
<body>
<ul>
<li><a href="#" onclick="ajax_navigation('get');">GET</a></li>
<li><a href="#" onclick="ajax_navigation('post');">POST</a></li>
</ul>
<div id="hallo">das wird ersetzt</div>
</body>
</html>
Alles anzeigen
phip.js
PHP
<span class="syntaxdefault"><br />function phip_ajax_objekt</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">aktion</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> sende_art</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> array_field</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> array_value</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> wohin_id</span><span class="syntaxkeyword">)<br />{<br /></span><span class="syntaxdefault"> this</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">url </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> aktion</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">//wo liegt die datei<br /></span><span class="syntaxdefault"> this</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">method </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> sende_art</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">//methode zum senden<br /></span><span class="syntaxdefault"> this</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">send_name </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> array_field</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">//array-feld<br /></span><span class="syntaxdefault"> this</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">send_content </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> array_value</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">//array-feld-value<br /></span><span class="syntaxdefault"> this</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">target_id </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> wohin_id</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">//wo wird das ergebnis abgeladen?<br /><br /></span><span class="syntaxdefault"> var request </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> false</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">//variable setzten<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">window</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">XMLHttpRequest</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> request </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> new XMLHttpRequest</span><span class="syntaxkeyword">();</span><span class="syntaxdefault"> </span><span class="syntaxcomment">// Mozilla, Safari, Opera<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> else if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">window</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">ActiveXObject</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> try<br /> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> request </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> new ActiveXObject</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'Msxml2.XMLHTTP'</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> </span><span class="syntaxcomment">// IE 5<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> catch </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">e</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> try<br /> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> request </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> new ActiveXObject</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'Microsoft.XMLHTTP'</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> </span><span class="syntaxcomment">// IE 6<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> catch </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">e</span><span class="syntaxkeyword">)</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{}<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /><br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(!</span><span class="syntaxdefault">request</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> alert</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Kann keine XMLHTTP-Instanz erzeugen"</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> return false</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> else<br /> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> request</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">open</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">this</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">method</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> this</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">url</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> true</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> request</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">setRequestHeader</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'Content-Type'</span><span class="syntaxkeyword">,</span><span class="syntaxdefault"> </span><span class="syntaxstring">'application/x-www-form-urlencoded'</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> request</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">send</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">this</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">send_name</span><span class="syntaxkeyword">+</span><span class="syntaxstring">"="</span><span class="syntaxkeyword">+</span><span class="syntaxdefault">this</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">send_content</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> request</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">onreadystatechange </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> anfrage_auswerten</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /><br /></span><span class="syntaxdefault"> function anfrage_auswerten</span><span class="syntaxkeyword">()<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> switch </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">request</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">readyState</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> case 4</span><span class="syntaxkeyword">:<br /></span><span class="syntaxdefault"> if </span><span class="syntaxkeyword">(</span><span class="syntaxdefault">request</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">status </span><span class="syntaxkeyword">!=</span><span class="syntaxdefault"> 200</span><span class="syntaxkeyword">)<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> alert</span><span class="syntaxkeyword">(</span><span class="syntaxstring">"Die Anfrage wurde abgeschlossen, ist aber nicht OK\nFehler:"</span><span class="syntaxkeyword">+</span><span class="syntaxdefault">request</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">status</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> else<br /> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault"> var content </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> request</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">responseText</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> document</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">getElementById</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'hallo'</span><span class="syntaxkeyword">).</span><span class="syntaxdefault">innerHTML </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> content</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxcomment">//this.target_id geht nicht<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> break</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> default</span><span class="syntaxkeyword">:<br /></span><span class="syntaxdefault"> break</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br /></span><span class="syntaxdefault"> </span><span class="syntaxkeyword">}<br />}<br /></span><span class="syntaxdefault"> </span>
test.php
PHP
<span class="syntaxhtml"><br /><span class="syntaxdefault"><?php<br /></span><span class="syntaxkeyword">if(</span><span class="syntaxdefault"> isset</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$_GET</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'page'</span><span class="syntaxkeyword">])</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">)<br />{<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"GET:<br />"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"<pre>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> print_r</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$_GET</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"</pre>"</span><span class="syntaxkeyword">;<br />}<br />elseif(</span><span class="syntaxdefault"> isset</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$_POST</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'page'</span><span class="syntaxkeyword">])</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">)<br />{<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"POST:<br />"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"<pre>"</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault"> print_r</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$_POST</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"</pre>"</span><span class="syntaxkeyword">;<br />}<br />else<br />{<br /></span><span class="syntaxdefault"> echo </span><span class="syntaxstring">"fehler"</span><span class="syntaxkeyword">;<br />}<br /><br /></span><span class="syntaxdefault">?><br /></span></span>
Danke für hilfe
Gruß
Phip