Fehler anzeigen
Hannibal
- php
0 lulu0 Hannibal0 lulu0 Hannibal0 Thomas Luethi0 Hannibal0 Hannibal
Hallo zusammen
Ich habe eine Website auf einem Server mit sehr strengen PHP-Regeln. Wenn es einen zu grossen Fehler gibt(für die Regeln genug gross), wird die Seite nicht mehr angezeigt.
Jetzt habe ich die Datei mal auf einen weniger strengen Server geladen, um zu sehen was der Fehler sein könnte. Doch dort, zeigt es keine Fehler an. Dies Seite wird schön angezeigt.
Jetzt meine Frage(Ich habe schon rumgeschaut und keine Antwort gefunde)
Gibt es PHP selber auch so eine ausgabe, wie bei MySQL-Datenbank das mysql_error?
Gibt es einen PHP-validator, wie es auch einen HTML-validator gibt?
Gruss aus Winterthur
Hannibal
Huhu Hannibal
ggf. meinst Du dieses
ini_set('display_errors',true);
ini_set ('error_reporting', E_ALL);
hilfreich ist es auch folgende Konstruktion
if (isset($_GET['debug'])) {
ini_set('display_errors',true);
ini_set ('error_reporting', E_ALL);
}
dann kannst Du durch "Manipulation" an der URL einfach umschalten.
Viele Grüße
lulu
Huhu Hannibal
Hoi lulu
Erst mal Danke für deine Antwort.
ggf. meinst Du dieses
ini_set('display_errors',true);
ini_set ('error_reporting', E_ALL);hilfreich ist es auch folgende Konstruktion
if (isset($_GET['debug'])) {
ini_set('display_errors',true);
ini_set ('error_reporting', E_ALL);
}dann kannst Du durch "Manipulation" an der URL einfach umschalten.
Aber damit kann man ja die Serverkonfigurationen umstellen. Oder?
Falls ja, gibt es keine andere möglichkeit, der Server gehört nicht mir.
Viele Grüße
lulu
Gruss Hannibal
Huhu Hannibal
Aber damit kann man ja die Serverkonfigurationen umstellen. Oder?
Nein, Änderungen durch ini_set gelten nur zur Laufzeit für eben dieses Skript.
Schau Dir dazu das Manual an
http://de3.php.net/manual/en/function.ini-set.php
Du kannst also an der eigentlichen Serverkonfiguration nichts ändern oder kaputt machen.
Viele Grüße
lulu
Huhu Hannibal
Hallo lulu
Aber damit kann man ja die Serverkonfigurationen umstellen. Oder?
Nein, Änderungen durch ini_set gelten nur zur Laufzeit für eben dieses Skript.
Ah gut.
Schau Dir dazu das Manual an
Habe ich bereits angeschaut. Doch wohl nicht gut genug gelesen.(oder ich kann nicht gut genug Englisch)
Du kannst also an der eigentlichen Serverkonfiguration nichts ändern oder kaputt machen.
Beruhigend zu wissen. ;-)
Ich hätte wahrscheinlich eh kein zugriff. Ich habe nur gedacht, du meintest, der Server gehöre mir.
Dann kann ich jetzt weiterarbeiten.
Noch einen schönen Tag und grüsse aus Winterthur(CH).
Viele Grüße
lulu
Gruss Hannibal
Hallo Michi,
http://www.php.net/manual/en/function.ini-set.php
Habe ich bereits angeschaut. Doch wohl nicht gut genug gelesen.(oder ich kann nicht gut genug Englisch)
Ersetze in der URL /en/ durch /de/, um die deutsche Version
des Manuals zu sehen:
http://www.php.net/manual/de/function.ini-set.php
OK, hier hast Du im Moment noch Pech - es gibt noch
keine Uebersetzung...
Die englische Version ist aber oft aktueller und hat mehr
Beispiele, deshalb bevorzuge auch ich die englische Version.
---
Im Skript selbst kannst Du diejenigen Konfigurationen aendern,
die in der rechten Spalte der oben genannten Seite den Wert
PHP_INI_USER oder PHP_INI_ALL haben.
PHP_INI_USER Option kann in Benutzer-Skripten gesetzt werden
PHP_INI_PERDIR Option kann in der php.ini, .htaccess oder
httpd.conf gesetzt werden
PHP_INI_SYSTEM Option kann in der php.ini oder httpd.conf gesetzt werden
PHP_INI_ALL Option kann überall gesetzt werden
Gruesse,
Thomas
Hallo Michi,
Hallo auch
http://www.php.net/manual/en/function.ini-set.php
Habe ich bereits angeschaut. Doch wohl nicht gut genug gelesen.(oder ich kann nicht gut genug Englisch)Ersetze in der URL /en/ durch /de/, um die deutsche Version
des Manuals zu sehen:
http://www.php.net/manual/de/function.ini-set.php
OK, hier hast Du im Moment noch Pech - es gibt noch
keine Uebersetzung...
Deutscher wirds nicht mit diesem Link... :D
...das kann ich dir bestätigen.
Die englische Version ist aber oft aktueller und hat mehr
Beispiele, deshalb bevorzuge auch ich die englische Version.
Ich bevorzuge lieber die Deutsch, weil ich nicht so gut Englisch kann.
Aber ich sollte schon mal die Englische Version anschauen, damit ich noch etwas lerne.
Im Skript selbst kannst Du diejenigen Konfigurationen aendern,
die in der rechten Spalte der oben genannten Seite den Wert
PHP_INI_USER oder PHP_INI_ALL haben.PHP_INI_USER Option kann in Benutzer-Skripten gesetzt werden
PHP_INI_PERDIR Option kann in der php.ini, .htaccess oder
httpd.conf gesetzt werden
PHP_INI_SYSTEM Option kann in der php.ini oder httpd.conf gesetzt werden
PHP_INI_ALL Option kann überall gesetzt werden
Jetzt ist alles klar.
Danke
Gruesse,
Thomas
Grüsse aus Winterthur(CH)
Hannibal
Hallo nochmals
Eure Ideen funktionieren Prima, doch nicht dort wo sie sollten. Sie laufen auf dem einen Server, aber auf dem, dem sie sollten nicht.
Die Seite bleibt wie bisher einfach weiss.
Gruss Hannibal
Hallo,
Die Seite bleibt wie bisher einfach weiss.
Ohne Quellcode, eine genauere Problembeschreibung
und die ueblichen relevanten Angaben (PHP-Versionen,
uebergebene Parameter, evtl. Fehlermeldungen u.s.w.)
bleibt mir nur die Glaskugel.
Und die sagt mir, dass Dein Problem evtl. an
register_globals=off
liegen koennte.
dclp-FAQ: "Warum funktionieren meine Formulare nicht?"
http://www.dclp-faq.de/q/q-formular-register-globals.html
Gruesse,
Thomas
Hallo,
Hallo too. :D
Die Seite bleibt wie bisher einfach weiss.
Ohne Quellcode, eine genauere Problembeschreibung
und die ueblichen relevanten Angaben (PHP-Versionen,
uebergebene Parameter, evtl. Fehlermeldungen u.s.w.)
bleibt mir nur die Glaskugel.
Also, wenn ich die Seite aufmache, kommt nur eine weisse Seite. Die Ansicht auf der man die Infos ausfüllen kann.
Also auch keine Fehlermeldungen.
Den Quelltext kann man allerdings ansehen.
Wenn du dir das wirklich antun willst, ist hier der Quelltext:
http://www.rieter-creativesolutions.ch/neu/formmail2.txt
die Seite ist dann einfach .php
Und die sagt mir, dass Dein Problem evtl. an
register_globals=off
liegen koennte.
dclp-FAQ: "Warum funktionieren meine Formulare nicht?"
http://www.dclp-faq.de/q/q-formular-register-globals.html
Die Seite war vorher schonmal weiss, dann habe ich sie auf einen anderen Server geladen und dort hat es mir statt der weissen Seite die Fehlermeldung angezeigt. Doch diese blieben diesmal aus. Auf dem anderen Server funktionnniert alles bestens.
Gruesse,
Thomas
Grüsse aus Winterthur(CH)
Hannibal
Hallo,
Wenn du dir das wirklich antun willst, ist hier der Quelltext:
http://www.rieter-creativesolutions.ch/neu/formmail2.txt
Ein konzentrierter Auszug mit den wesentlichen Zeilen
waere mir wesentlich lieber... ;-)
Und eine genauere Problembeschreibung.
Ohne die kann ich nur drei allgemeine Tips geben:
Um zu sehen, ob ini_set() erfolgreich war, kannst Du
Dir ja den Wert der Konfigurationsvariablen anzeigen
lassen mit ini_get().
Um zu sehen, in welchem Ast einer IF/ELSE Verzweigung
Du gelandet bist, kannst Du z.B. testweise auch
etwas ausgeben:
if ($bedingung1)
{
echo "<!-- Bedingung 1 erfuellt -->\n";
/* weitere Befehle */
}
else
{
echo "<!-- Bedingung 1 NICHT erfuellt -->\n";
/* weitere Befehle */
}
Um zu sehen, welchen Wert eine Variable zu einem
gewissen Zeitpunkt hat, solltest Du sie zu genau
diesem Zeitpunkt auch ausgeben lassen, z.B.
echo "<p>Variable xy hat vor der IF/ELSE Verzweigung den Wert ($xy)</p>\n";
(Wenn Du Klammern schreibst, siehst Du noch besser,
wenn sie leer ist. Du kannst sie auch weglassen.)
Gruesse,
Thomas
Hallo
Heute habe ich mir die <meta>-Tags nochmals angesehen und erweitert.
Und was sehe ich ein eröffnen eines JavaScriptes.
Leider bin ich jetzt an einem PC ohne FTP und kann es nicht ausprobieren, aber ich denke, dass ist das Problem.
Aber wenn die Dummheit Musik machen würde, hätte ich ein ganzes Orchester.
Grüsse aus Winterthur(CH)
Hannibal