• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

xhtml request/php 500 Internal Error

eieste

Mitglied
Hallo

Folgendes Problem. Ich hab einen Web-Server im Internet und einen Lokalen (Mamp [XAMPP für Mac]). Das Problem: Ein Script, dass lokal lief funktioniert auf einmal auf meinem Server nicht mehr.
Es handelt sich um einen xhtml Request.
Hier mal der Code vom Request.

PHP:
if(chat_auth($login_site) == true)
{
$load_pfad = '?functioncode=HC7RILs9BXlBcrv11FbR';
echo"<script type='text/javascript'>loadXMLDoc();window.setInterval('loadXMLDoc()', 1000);";
}
else
{
$load_pfad = '?functioncode=LW4WCD10tElDNpuXsyCY';
echo"<script type='text/javascript'>loadXMLDoc();";
}

echo"
function loadXMLDoc()
{
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('chat_fenster').innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open('GET','$load_pfad',true);
xmlhttp.send();
}
</script>
";

Das komische, wenn ich in die zu ladende Datei einen Text per echo ausgebe, funktioniert der Code. Wenn ich jedoch einen break; darunter setzte bringt mir Safari folgende Fehlermeldung

Code:
Failed to load resource:
the server responded with a status of 500 (Internal Server Error)
POST http://ultraapp.de/?functioncode=HC7RILs9BXlBcrv11FbR 
500 (Internal Server Error)
XHR finished loading: "http://ultraapp.de/?functioncode=HC7RILs9BXlBcrv11FbR".


(?functioncode=HC7RILs9BXlBcrv11FbR". Gibt in meinen Script auskunft welche funktion er aus diesem dokument laden soll.Einfach: es ist der pfad zum script das per request geladen werden soll.)Das komische: Wenn ich den komplette code der zu ladenden datei durch eine PHP echo ausgabe ersetze Funktioniert es. Sobalt ich ein break; Hinschreibe kommt der gleiche fehler


Habt ihr eine Idee was das sein könnte???


Vielen dank für eure Hilfe
 
Werbung:
Kann man mal bitte einen Auszug aus der Datei sehen? Das hört sich nämlich alles sehr merkwürdig an dem geposteten Code-Ausschnitt scheint es nicht zu liegen.
Befindet sich die break-Anweisung denn in einem Switch-Case ?
Wenn nicht suchst du eventuell die Funktion exit um die Ausgabe an der Stelle abzubrechen.
Mal etwas ganz Anderes. Eine richtige Übersicht über dein HTML machst du dir nicht gerade mit deinen echo Anweisungen. Ich empfehle dir anstatt dieser Schreibweise:
PHP:
echo"
function loadXMLDoc()
{
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('chat_fenster').innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open('GET','$load_pfad',true);
xmlhttp.send();
}
</script>
";
Eher diese hier:
PHP:
function loadXMLDoc()
{
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('chat_fenster').innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open('GET','<?php echo $load_pfad; ?>',true);
xmlhttp.send();
}
 
Werbung:
Ich empfehle dir anstatt dieser Schreibweise:
Eher diese hier:

Das ist ein auszug aus einer selbstgeschriebenen PHP "Libary". Es Würde maximal so gehen:

PHP:
//PHP CODE
?>
function loadXMLDoc()
{
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('chat_fenster').innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open('GET','$load_pfad',true);
xmlhttp.send();
}
</script>
<?php

//PHP CODE

Das ist aber nicht das thema.

Es war am break; bzw. am exit; gelegen. Jetzt hab ich`s durch ein exit; ersetzt. Und schon Funktionierts. Es ist aber komisch, dass es auch lokal mit break; funkitoniert hat. Obwohl ich die gleiche PHP Version habe.Egal.

Vielen Dank für euren Tipp.
 
Zurück
Oben