Keine Error-Anzeige

Keine Error-Anzeige

am 22.10.2006 15:23:47 von Ricardo Wickel

Hallo NG,

habt ihr eine Ahnung woran es liegen kann, dass bei mir trotz
error_reporting(E_ALL | E_STRICT);
weder Error noch Notice Meldungen ausgegeben werden?

Beispiel:
error_reporting(E_ALL + E_STRICT);
ini_set ('display_errors', true);
ini_set ('display_startup_errors', true);
phpinfo();
$name = "Progman"
echo $name;
?>
Bringt nur eine weiße Seite


mfg,
Ricardo Wickel

--
http://doppeltgedacht.de/ | Weblog
http://wiky.de/ | Privat
http://ql-webdesign.de/ | Webdesign/ Programmierung

Re: Keine Error-Anzeige

am 22.10.2006 16:08:13 von Johannes Vogel

Hi Ricardo

Ricardo Wickel wrote:
> habt ihr eine Ahnung woran es liegen kann, dass bei mir trotz
> error_reporting(E_ALL | E_STRICT);
> weder Error noch Notice Meldungen ausgegeben werden?
> Beispiel:
> > error_reporting(E_ALL + E_STRICT);
> ini_set ('display_errors', true);
> ini_set ('display_startup_errors', true);
> phpinfo();
> $name = "Progman"
> echo $name;
> ?>
> Bringt nur eine weiße Seite

Debugging und reduzieren...

Erst einfach mal phpinfo() ausführen und schauen, wie das
error_reporting gehandhabt wird und ob du's überschreiben darfst.

dann error_reporting(), ini_sets einzeln ausführen und wiederum am
Schluss mit phpinfo() schauen, was passiert.

Immer auch kurz einen Blick in den Quelltext des Browsers werfen.

HTH, Johannes

Re: Keine Error-Anzeige

am 22.10.2006 16:18:52 von Norbert Melzer

Am Sun, 22 Oct 2006 15:23:47 +0200 schrieb Ricardo Wickel:

> error_reporting(E_ALL | E_STRICT);
>
> error_reporting(E_ALL + E_STRICT);

[ ] Dir ist der Unterschied zwischen | und + bekannt.

HTH
Norbert
--
Link zur PHP-FAQ http://www.php-faq.de

Re: Keine Error-Anzeige

am 22.10.2006 16:24:28 von Ricardo Wickel

Johannes Vogel schrieb:
> Hi Ricardo
>
> Ricardo Wickel wrote:
>> habt ihr eine Ahnung woran es liegen kann, dass bei mir trotz
>> error_reporting(E_ALL | E_STRICT);
>> weder Error noch Notice Meldungen ausgegeben werden?
>> Beispiel:
>> >> error_reporting(E_ALL + E_STRICT);
>> ini_set ('display_errors', true);
>> ini_set ('display_startup_errors', true);
>> phpinfo();
>> $name = "Progman"
>> echo $name;
>> ?>
>> Bringt nur eine weiße Seite
>
> Debugging und reduzieren...
>
> Erst einfach mal phpinfo() ausführen und schauen, wie das
> error_reporting gehandhabt wird und ob du's überschreiben darfst.
>
> dann error_reporting(), ini_sets einzeln ausführen und wiederum am
> Schluss mit phpinfo() schauen, was passiert.
>
> Immer auch kurz einen Blick in den Quelltext des Browsers werfen.
>
> HTH, Johannes
Schon gemacht, nur leider weiß ich jetzt nicht mehr, was noch umgestellt
werden muss, damit ich Fehler angezeigt bekomme.

phpinfo: http://diary.wiky.de/debug/db_test.php


mfg,
Ricardo Wickel

--
http://doppeltgedacht.de/ | Weblog
http://wiky.de/ | Privat
http://ql-webdesign.de/ | Webdesign/ Programmierung

Re: Keine Error-Anzeige

am 22.10.2006 16:36:26 von Frank Schenk

Ricardo Wickel schrieb:
> Beispiel:
> > error_reporting(E_ALL + E_STRICT);
> ini_set ('display_errors', true);
> ini_set ('display_startup_errors', true);
> phpinfo();
> $name = "Progman"
> echo $name;
> ?>

http://www.php.net/manual/en/ref.errorfunc.php

true ist in dem Fall sinnbefreit, der Wert von display_errors ist 1 oder
verschieden von 1.

Desweiteren ist + kein bitweises UND.

E_ALL & E_STRICT ist richtig.

gruß, Frank

Re: Keine Error-Anzeige

am 22.10.2006 17:28:13 von Ricardo Wickel

Frank Schenk schrieb:
> Ricardo Wickel schrieb:
>> Beispiel:
>> >> error_reporting(E_ALL + E_STRICT);
>> ini_set ('display_errors', true);
>> ini_set ('display_startup_errors', true);
>> phpinfo();
>> $name = "Progman"
>> echo $name;
>> ?>
>
> http://www.php.net/manual/en/ref.errorfunc.php
>
> true ist in dem Fall sinnbefreit, der Wert von display_errors ist 1 oder
> verschieden von 1.
>
> Desweiteren ist + kein bitweises UND.
>
> E_ALL & E_STRICT ist richtig.
>

Klappt trotzdem auch mit + und 1 wie ich per phpinfo sehen kann.

Allerdings werden mir trotzdem keine Fehler angezeigt und wenn ein
Script ein Fehler hat, wird auch davor nichts angezeigt sondern nur ein
weißer Bildschirm d.h. nichts wird an den Browser gesendet




mfg,
Ricardo Wickel

--
http://doppeltgedacht.de/ | Weblog
http://wiky.de/ | Privat
http://ql-webdesign.de/ | Webdesign/ Programmierung

Re: Keine Error-Anzeige

am 22.10.2006 20:13:59 von Claus Reibenstein

Ricardo Wickel schrieb:

> error_reporting(E_ALL | E_STRICT);
^

> error_reporting(E_ALL + E_STRICT);
^

Du siehst den Unterschied?

Gruß. Claus

Re: Keine Error-Anzeige

am 22.10.2006 21:08:11 von Willi Marquart

Claus Reibenstein schrieb:

>> error_reporting(E_ALL | E_STRICT);
> ^
>
>> error_reporting(E_ALL + E_STRICT);
> ^
>
>Du siehst den Unterschied?

2047 | 2048 = 4095
2047 + 2048 = 4095

Ich seh keinen, und Du?

Gruß Willi

Re: Keine Error-Anzeige

am 22.10.2006 21:12:03 von Willi Marquart

Frank Schenk schrieb:

>E_ALL & E_STRICT ist richtig.

Bist Du sicher?

2047 & 2048 = 0

Bringt's irgendwie nicht.

Gruß Willi

Re: Keine Error-Anzeige

am 22.10.2006 23:03:44 von Ulf Kadner

Willi Marquart schrieb:

>> Du siehst den Unterschied?
>
> 2047 | 2048 = 4095
> 2047 + 2048 = 4095
>
> Ich seh keinen, und Du?

Da liegst Du eindeutig falsch! Auch wenn das in Deinem speziellen Fall
zum gleichen Ergebnis führt. Diese Unart solltest Du Dir gar nicht erst
angewöhnen! Der bitweise OR-Opertator | ist hier die richtige Wahl sonst
kommts schnell zu Problemen

E_ALL | E_NOTICE erzeugt: 2047
E_ALL + E_NOTICE erzeugt: 2055

MfG, Ulf

Re: Keine Error-Anzeige

am 23.10.2006 06:35:43 von Willi Marquart

Ulf Kadner schrieb:

>Da liegst Du eindeutig falsch! Auch wenn das in Deinem speziellen Fall
>zum gleichen Ergebnis führt. Diese Unart solltest Du Dir gar nicht erst
>angewöhnen! Der bitweise OR-Opertator | ist hier die richtige Wahl sonst
>kommts schnell zu Problemen
>
>E_ALL | E_NOTICE erzeugt: 2047
>E_ALL + E_NOTICE erzeugt: 2055

Das ist mir alles schon klar, nur die Tatsache, dass der OP keine
Error-Anzeige erhielt, lag mit Gewissheit nicht an der Verwendung von
+ statt |.

Gruß Willi

Re: Keine Error-Anzeige

am 23.10.2006 10:51:24 von Claus Reibenstein

Willi Marquart schrieb:

> Claus Reibenstein schrieb:
>
>>> error_reporting(E_ALL | E_STRICT);
>> ^
>>
>>> error_reporting(E_ALL + E_STRICT);
>> ^
>>
>> Du siehst den Unterschied?
>
> 2047 | 2048 = 4095
> 2047 + 2048 = 4095

Mag sein, dass diese Werte für Dein PHP gelten (meines kennt E_STRICT
nicht). Allerdings interessieren mich als Entwickler die tatsächlichen
Werte nicht im Geringsten. Sonst bräuchte ich die symbolischen
Konstanten gar nicht erst verwenden, sondern könnte gleich die Zahlen
hinschreiben.

> Ich seh keinen, und Du?

Ja, ich sehe einen. Du nicht?

Dass der formale Unterschied in diesem speziellen Fall _zufällig_ zu
identischen Ergebnissen führt, ist ein anderes Kapitel. Aber auch das
interessiert mich nicht. Als professioneller Entwickler verlasse ich
mich nicht auf solche Zufälle. Ich bevorzuge deterministische
Programmiermethoden.

Gruß. Claus

Re: Keine Error-Anzeige

am 23.10.2006 11:33:44 von Willi Marquart

Claus Reibenstein schrieb:

>Dass der formale Unterschied in diesem speziellen Fall _zufällig_ zu
>identischen Ergebnissen führt, ist ein anderes Kapitel. Aber auch das
>interessiert mich nicht. Als professioneller Entwickler verlasse ich
>mich nicht auf solche Zufälle. Ich bevorzuge deterministische
>Programmiermethoden.

So zufällig ist das nicht. Das klappt immer dann, wenn in den beiden
Konstanten keine Bitdoubletten vorhanden sind. Aber natürlich würde
ich die Werte auch per OR und nicht durch Addition verknüpfen, das ist
der korrekte Weg.

Nur zur Lösung des Problems des OPs war Deine Antwort weder
deterministisch noch professionell, sondern nur schlichtweg falsch.

Gruß Willi

Re: Keine Error-Anzeige

am 23.10.2006 12:03:30 von Claus Reibenstein

Willi Marquart schrieb:

> Claus Reibenstein schrieb:
>
>> Dass der formale Unterschied in diesem speziellen Fall _zufällig_ zu
>> identischen Ergebnissen führt, ist ein anderes Kapitel. Aber auch das
>> interessiert mich nicht. Als professioneller Entwickler verlasse ich
>> mich nicht auf solche Zufälle. Ich bevorzuge deterministische
>> Programmiermethoden.
>
> So zufällig ist das nicht. Das klappt immer dann, wenn in den beiden
> Konstanten keine Bitdoubletten vorhanden sind.

Womit der Zufall belegt wäre.

> Nur zur Lösung des Problems des OPs war Deine Antwort weder
> deterministisch noch professionell, sondern nur schlichtweg falsch.

Wenn Du das so sehen willst ...

Gruß. Claus

Re: Keine Error-Anzeige

am 23.10.2006 12:05:05 von Johannes Vogel

Hi Ricardo

Ricardo Wickel wrote:
> Johannes Vogel schrieb:
>> Hi Ricardo
>>
>> Ricardo Wickel wrote:
>>> habt ihr eine Ahnung woran es liegen kann, dass bei mir trotz
>>> error_reporting(E_ALL | E_STRICT);
>>> weder Error noch Notice Meldungen ausgegeben werden?
>>> Beispiel:
>>> >>> error_reporting(E_ALL + E_STRICT);

Dieses + ist sicher nicht der richtige Operator. Korrekt wäre |. Siehe
dazu http://ch2.php.net/manual/en/ref.errorfunc.php der Abschnitt unter
Table 2.

E_ALL ist in verschiedenen Versionen von PHP verschieden gross.
Siehe in obiger Seite Table 2 Errors and Logging, letzte Spalte.

Nun hast du ne weisse Seite, aber warum das am Error Reporting liegen
soll, scheint mir etwas unklar. Denn ich seh keinen Error in deinem Script.

Vielleicht magst du mal bei der Webserver/PHP-Schnittstelle suchen? Hast
du andere Scripts am laufen? Bspw: funktioniert? Was
wird da als error_reporting gezeigt?

> Schon gemacht, nur leider weiß ich jetzt nicht mehr, was noch umgestellt werden muss, damit ich Fehler angezeigt bekomme.
> phpinfo: http://diary.wiky.de/debug/db_test.php

Das Objekt ist nicht zu finden.

HTH, Johannes

Re: Keine Error-Anzeige

am 23.10.2006 14:49:25 von Frank Schenk

Willi Marquart schrieb:
> Frank Schenk schrieb:
>
>> E_ALL & E_STRICT ist richtig.
>
> Bist Du sicher?
>
> 2047 & 2048 = 0
>
> Bringt's irgendwie nicht.

E_ALL | E_STRICT

meinte ich natürlich :)

Muss natürlich ein ODER sein.

gruß, Frank