tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
10
ZUGRIFFE
1033
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    drabbit drabbit ist offline Mitglied Silber
    Registriert seit
    Aug 2004
    Beiträge
    85
    Hallo Leute,

    da bin ich wieder mit meinen Ajax-Anfänger-Problemen...

    Ich habe eine Seite mit 3 Buttons und möchte wenn man auf einen Button kickt auf meiner Seite ausklicken auf welchen Button man geklickt hat.

    Leider kommt bei mir immer eine Fehlermeldung und ich weiß nicht ganz woran es liegt...

    Hier mein Code:
    HTML-Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Ajax PU </title>
    <script type="text/javascript" src="js/prototype.js" ></script>
    <script type="text/javascript" src="js/scriptaculous.js" ></script>
    
    
      <style type="text/css">
        body {
          color:black;
          background-color:#CCC;
    	  font-family:Verdana, Geneva, sans-serif;
        }
        h1 {
    		text-align:center;
    	}    
    	h2 {
    		text-align:center;
    	}
    	
    	img{
    		border:5px solid #AAAAAA;
    	}
    	
    	.kasterl {
    		background-color:#AAAAAA;
    		border:1px solid red;
    		cursor:pointer;
    		float:left;
    		height:58px;
    		margin:10px;
    		padding-top:42px;
    		text-align:center;
    		width:100px;
    	}
    	
    	#button1 {
    		border:4px solid blue;
    		cursor:pointer;
    		float:left;
    		margin:10px;
    		padding-bottom:40px;
    		padding-top:40px;
    		text-align:center;
    		width:100px;
    		background-color:#AA0000;
    	}
    
    	#button2 {
    		border:4px solid blue;
    		cursor:pointer;
    		float:left;
    		margin:10px;
    		padding-bottom:40px;
    		padding-top:40px;
    		text-align:center;
    		width:100px;
    		background-color:#00AA00;
    	}
    	
    #button3 {
    		border:4px solid blue;
    		cursor:pointer;
    		float:left;
    		margin:10px;
    		padding-bottom:40px;
    		padding-top:40px;
    		text-align:center;
    		width:100px;
    		background-color:#00AAAA;
    	}
    
    
    	
      </style>
      
    
      
    </head>
    
    <div id="button1" title="1"><a href="javascript:setRequest('1')">Button 1</a></div>
    <div id="button2" title="2"><a href="javascript:setRequest('2')">Button 2</a></div>
    <div id="button3" title="3"><a href="javascript:setRequest('3')">Button 3</a></div>
    
    <br />
    <div id="content"></div>
    
    
    
    
      <script type="text/javascript">
      <!--
    	var request = false;
    
    	// Request senden
    	function setRequest(value) {
    		// Request erzeugen
    		if (window.XMLHttpRequest) {
    			request = new XMLHttpRequest(); // Mozilla, Safari, Opera
    		} else if (window.ActiveXObject) {
    			try {
    				request = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
    			} catch (e) {
    				try {
    					request = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
    				} catch (e) {}
    			}
    		}
    
    		// überprüfen, ob Request erzeugt wurde
    		if (!request) {
    			alert("Kann keine XMLHTTP-Instanz erzeugen");
    			return false;
    		} else {
    			var url = "updateSite.php";
    			// Request öffnen
    			request.open('post', url, true);
    			// Requestheader senden
    			request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    			// Request senden
    			request.send('name='+value);
    			// Request auswerten
    			request.onreadystatechange = interpretRequest;
    		}
    	}
    
    	// Request auswerten
    	function interpretRequest() {
    		switch (request.readyState) {
    			// wenn der readyState 4 und der request.status 200 ist, dann ist alles korrekt gelaufen
    			case 4:
    				if (request.status != 200) {
    					alert("Der Request wurde abgeschlossen, ist aber nicht OK\nFehler:"+request.status);
    				} else {
    					var content = request.responseText;
    					// den Inhalt des Requests in das <div> schreiben
    					document.getElementById('content').innerHTML = content;
    				}
    				break;
    			default:
    				break;
    		}
    	}
      //-->
      </script>
    
    
    </body>
    </html>

    und so sieht die 2te php site aus:

    PHP-Code:
    <?php
    header
    ('Content-Type: text/html; charset=utf-8'); // sorgt für die korrekte Kodierung
    header('Cache-Control: must-revalidate, pre-check=0, no-store, no-cache, max-age=0, post-check=0'); // ist mal wieder wichtig wegen IE

    $name strtoupper($_POST['name']);
    echo 
    $name;
    ?>
    Geändert von drabbit (22.04.10 um 12:40 Uhr)
     

  2. #2
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    Zitat Zitat von drabbit Beitrag anzeigen
    Leider kommt bei mir immer eine Fehlermeldung und ich weiß nicht ganz woran es liegt...
    Du solltest uns schon verraten, wie diese denn lautet...

    LG
     
    Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.

  3. #3
    drabbit drabbit ist offline Mitglied Silber
    Registriert seit
    Aug 2004
    Beiträge
    85
    Zitat Zitat von kuddeldaddeldu Beitrag anzeigen
    Hi,



    Du solltest uns schon verraten, wie diese denn lautet...

    LG
    Natürlich also ich bekomme folgenden Text:

    Der Request wurde abgeschlossen, ist aber nicht OK
    Fehler:0


    Wobei ich nicht weiß warum er Fehler:0 schreibt... ein 404er wär mir lieber
     

  4. #4
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    der gepostete Code funktioniert bei mir einwandfrei. Wie sieht denn der zugehörige statusText aus?

    LG
     
    Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.

  5. #5
    Avatar von Mark
    Mark Mark ist offline Mod | Cinema4D
    tutorials.de Moderator
    Registriert seit
    Aug 2003
    Ort
    Vienna:Austria
    Beiträge
    8.123
    Blog-Einträge
    10
    Hi!

    Habe da ja eigentlich keine Ahnung von, aber per Google findet sich der Hinweis, daß es am File-Zugriff auf eine lokale Datei liegen kann (?).
    Vielleicht einfach mal probieren:
    PHP-Code:
    var url "http://localhost/updateSite.php"
    ...wenn das totaler Schwachsinn war, bitte einfach ignorieren

    Liebe Grüße,
    Mark.
     
    ... bitte keine C4D-Fragen per PN ...
    +++ OUT NOW for CINEMA4D:
    Al'em - Free Align Plugin + Shaderpack Vol 1 - Free Shaders
    + Roll-It v1.0 - Free Roll Plugin + Egg-Objekt - Free Egg Primitive +++
    eggtion.net

  6. #6
    drabbit drabbit ist offline Mitglied Silber
    Registriert seit
    Aug 2004
    Beiträge
    85
    Also bei dir schreibt er dann auf welchen Button du geklickt hast?

    Status txt hab ich eigentlich nicht - also für die fehlermeldung, ich hab nur die 2 Seiten wie oben gepostet
     

  7. #7
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    Zitat Zitat von drabbit Beitrag anzeigen
    Also bei dir schreibt er dann auf welchen Button du geklickt hast?
    "er" macht genau das, was "er" machen soll. Der gepostete Value wird in das entsprechende Div geschrieben, ja.

    Zitat Zitat von drabbit Beitrag anzeigen
    Status txt hab ich eigentlich nicht - also für die fehlermeldung, ich hab nur die 2 Seiten wie oben gepostet
    Wie, "hast Du nicht"? Du sollst das ausgeben lassen. Wer alert(req.status) kann, kann doch wohl auch alert(reg.statusText)?

    LG
     
    Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.

  8. #8
    drabbit drabbit ist offline Mitglied Silber
    Registriert seit
    Aug 2004
    Beiträge
    85
    Ich habe es nun die Datein auf meinen Server geladen - da funktioniert es wunderbar. Keine Ahnung warum das Skript lokal Probleme bereitet - aber da es auf dem Server funktioniert - bin ich jetzt damit zufrieden.

    Danke.
     

  9. #9
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    auf den Grund gehen würde ich dem Problem aber trotzdem.

    LG
     
    Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.

  10. #10
    OnlyFoo OnlyFoo ist offline Mitglied Brokat
    Registriert seit
    Feb 2005
    Beiträge
    470
    Naja was heißt Lokal? Ganz lokal ohne webserver kann es ja nicht funktionieren. Und Lokal mit Webserver muss es eigentlich Funktionieren, wenn du den richtig konifiguriert hast.
     

  11. #11
    kuddeldaddeldu kuddeldaddeldu ist offline Mitglied Diamant
    Registriert seit
    Dec 2007
    Ort
    Bremen
    Beiträge
    3.418
    Hi,

    Zitat Zitat von OnlyFoo Beitrag anzeigen
    Und Lokal mit Webserver muss es eigentlich Funktionieren
    genau, "bei mir" hätte auch korrekt "bei mir lokal" heißen müssen.

    Das fällt mir ein, kann es sein, dass Du die HTML-Seite gar nicht über den/einen Server (localhost, 127.0.0.1) aufgerufen hast, sondern über eine file://-URL? Dann kann das natürlich wie gesagt nicht funktionieren.

    LG
     
    Da es nötig zu werden scheint: Ich leiste hier keinen Support über PN. Stellt Rückfragen zu Euren Problemen bitte in Eurem Thread, dann können alle helfen.

Ähnliche Themen

  1. Problem mit Ajax Request Parameter in Prototype framework
    Von Yurtsever84 im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 17.10.10, 16:59
  2. Ajax Request in JSF
    Von dreamer29 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 1
    Letzter Beitrag: 28.07.10, 06:17
  3. Ajax Request
    Von as333 im Forum Javascript & Ajax
    Antworten: 19
    Letzter Beitrag: 18.10.09, 23:00
  4. Antworten: 14
    Letzter Beitrag: 09.05.09, 12:32
  5. Problem mit prototype Ajax.Request per post
    Von Andre_d im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 18.04.09, 20:44