Abbruch ohne Fehlermeldung

Hallo zusammen,

bei der Verwendung einer Klasse in meinem großen PHP-Projekt bricht das Skript einfach ohne jegliche Ausgabe ab, ich
seh' im Browser einen weißen Bildschirm.

Komisch ist, dass er auch keine "Parse-Errors" bringt, wenn ich einfach mal Blödsinn ausführe..

Weiß jemand Rat?

Danke,

Matze

PS: error_reporting = E_ALL & ~E_NOTICE
Matthias Matker [ Mo, 08 Oktober 2007 19:53 ] [ ID #1839501 ]

Re: Abbruch ohne Fehlermeldung

Matthias Matker schrieb:
> Hallo zusammen,
>
> bei der Verwendung einer Klasse in meinem großen PHP-Projekt bricht das
> Skript einfach ohne jegliche Ausgabe ab, ich seh' im Browser einen
> weißen Bildschirm.
>
> Komisch ist, dass er auch keine "Parse-Errors" bringt, wenn ich einfach
> mal Blödsinn ausführe..

Schau mal in die Apache-Logdatei. Dort wirst Du vermutlich "segmentation
fault" finden, ein Hinweis darauf, dass das PHP-Modul an sich auf die
unschönste Art gestorben ist. Das kann bei sehr derben Fehlern
passieren, die der Parser nicht abfangen kann, reproduzierbar ist z. B. das:

class Test {
function callYou() {
$this->callMe();
}

function callMe() {
$this->callYou();
}
}

$test = new Test();
$test->callYou();

(PHP 5.2.1)

--
Mein Zeugs:
http://www.hadanite-marasek.de/classes.php
http://www.objektivsuche.de/
Ansonsten:
http://www.php-faq.de/q/q-newsgroup-wie-helfen.html
Hadanite Marasek [ Mo, 08 Oktober 2007 20:23 ] [ ID #1839502 ]

Re: Abbruch ohne Fehlermeldung

Matthias Matker schrieb:
> bei der Verwendung einer Klasse in meinem großen PHP-Projekt bricht das
> Skript einfach ohne jegliche Ausgabe ab, ich seh' im Browser einen
> weißen Bildschirm.
Das geschieht bei mir dann wenn irgendwo eine Klammer nicht geschlossen
ist. Einfach entsprechende Teile auskommentieren dann findet sich das
meist schnell.

HTH, Peter
Peter Sommerfeld [ Mo, 08 Oktober 2007 20:51 ] [ ID #1839503 ]

Re: Abbruch ohne Fehlermeldung

Matthias Matker meinte:

> bei der Verwendung einer Klasse in meinem großen PHP-Projekt bricht das
> Skript einfach ohne jegliche Ausgabe ab, ich seh' im Browser einen
> weißen Bildschirm.
>
> Komisch ist, dass er auch keine "Parse-Errors" bringt, wenn ich einfach
> mal Blödsinn ausführe..

> PS: error_reporting = E_ALL & ~E_NOTICE

Und display_errors ist "on"?

Gregor


--
http://www.gregorkofler.at ::: Landschafts- und Reisefotografie
http://www.licht-blick.at ::: Forum für Multivisionsvorträge
http://www.image2d.com ::: Bildagentur für den alpinen Raum
Gregor Kofler [ Mo, 08 Oktober 2007 20:52 ] [ ID #1839504 ]

Re: Abbruch ohne Fehlermeldung

Gregor Kofler wrote:

> Und display_errors ist "on"?

Nur zur Vervollständigung:
Das darf aber nur auf Entwicklungsservern aktiviert sein. Auf
produktiven schreibt man Fehler ins Error-Log.

MfG, Ulf

--
_,
_(_p> Ulf [Kado] Kadner
\<_)
^^
Ulf Kadner [ Mo, 08 Oktober 2007 21:30 ] [ ID #1839507 ]

Re: Abbruch ohne Fehlermeldung (behoben)

Matthias Matker schrieb:
> Hallo zusammen,
>
> bei der Verwendung einer Klasse in meinem großen PHP-Projekt bricht das
> Skript einfach ohne jegliche Ausgabe ab, ich seh' im Browser einen
> weißen Bildschirm.
>
> Komisch ist, dass er auch keine "Parse-Errors" bringt, wenn ich einfach
> mal Blödsinn ausführe..
>
> Weiß jemand Rat?
>
> Danke,
>
> Matze
>
> PS: error_reporting = E_ALL & ~E_NOTICE

Danke für die Hinweise, das Problem lag an einem [at] include in __autoload()

Ciao
Matthias Matker [ Mo, 08 Oktober 2007 21:56 ] [ ID #1839508 ]

OT: include-Frage

Matthias Matker schrieb:
> Matthias Matker schrieb:
>> Hallo zusammen,
>>
>> bei der Verwendung einer Klasse in meinem großen PHP-Projekt bricht
>> das Skript einfach ohne jegliche Ausgabe ab, ich seh' im Browser einen
>> weißen Bildschirm.
>>
>> Komisch ist, dass er auch keine "Parse-Errors" bringt, wenn ich
>> einfach mal Blödsinn ausführe..
>>
>> Weiß jemand Rat?
>>
>> Danke,
>>
>> Matze
>>
>> PS: error_reporting = E_ALL & ~E_NOTICE
>
> Danke für die Hinweise, das Problem lag an einem [at] include in __autoload()

Wie kann ich eigentlich prüfen, ob ein include, require, include_once, require_once erfolgreich war oder nicht, sprich
die Datei inkludiert werden konnte oder nicht.

Ciao
Matthias Matker [ Mo, 08 Oktober 2007 22:07 ] [ ID #1839509 ]

Re: OT: include-Frage

Matthias Matker schrieb:
> Wie kann ich eigentlich prüfen, ob ein include, require, include_once,
> require_once erfolgreich war oder nicht, sprich die Datei inkludiert
> werden konnte oder nicht.

wie wäre es wenn einfach das [at] weg lässt?

--
Mit freundlichen Grüßen,
Christoph Herrmann

http://dragonprojects.de/
Christoph Herrmann [ Mo, 08 Oktober 2007 22:19 ] [ ID #1839510 ]

Re: OT: include-Frage

Matthias Matker schrieb:

> Wie kann ich eigentlich prüfen, ob ein include, require, include_once=
, require_once erfolgreich war oder nicht, sprich
> die Datei inkludiert werden konnte oder nicht.

Bei require/require_once merkst du es daran, dass ein entsprechender
Fatal Error ausgegeben wird.
Bei include/include_once prüfst du einfach den Rückgabewert.

MfG
Niels

--
| http://www.kolleg.de =B7 Das Portal der Kollegs in Deutschland |
| http://www.bsds.de =B7 BSDS Braczek Software- und DatenSysteme |
| Webdesign =B7 Webhosting =B7 e-Commerce =B7 Joomla! Content Management =
|
------------------------------------------------------------ ------
Niels Braczek [ Mo, 08 Oktober 2007 22:29 ] [ ID #1839512 ]

Re: OT: include-Frage

Niels Braczek schrieb:
> Matthias Matker schrieb:
>
>> Wie kann ich eigentlich prüfen, ob ein include, require, include_once, require_once erfolgreich war oder nicht, sprich
>> die Datei inkludiert werden konnte oder nicht.
>
> Bei require/require_once merkst du es daran, dass ein entsprechender
> Fatal Error ausgegeben wird.
> Bei include/include_once prüfst du einfach den Rückgabewert.

Er bringt aber dabei trotzdem Warnungen...
Matthias Matker [ Mo, 08 Oktober 2007 22:40 ] [ ID #1839513 ]

Re: OT: include-Frage

Matthias Matker schrieb:
> Niels Braczek schrieb:
>> Matthias Matker schrieb:
>>
>>> Wie kann ich eigentlich prüfen, ob ein include, require, include_on=
ce, require_once erfolgreich war oder nicht, sprich
>>> die Datei inkludiert werden konnte oder nicht.
>>
>> Bei require/require_once merkst du es daran, dass ein entsprechender
>> Fatal Error ausgegeben wird.
>> Bei include/include_once prüfst du einfach den Rückgabewert.
>
> Er bringt aber dabei trotzdem Warnungen...

Stört ja aber auch nicht. Eine fehlende Include-Datei deutet auf eine
korrumpierte (unvollständige) Umgebung hin.

MfG
Niels

--
| http://www.kolleg.de =B7 Das Portal der Kollegs in Deutschland |
| http://www.bsds.de =B7 BSDS Braczek Software- und DatenSysteme |
| Webdesign =B7 Webhosting =B7 e-Commerce =B7 Joomla! Content Management =
|
------------------------------------------------------------ ------
Niels Braczek [ Mo, 08 Oktober 2007 23:08 ] [ ID #1839514 ]

Re: OT: include-Frage

Matthias Matker wrote:

Hallo,

> Wie kann ich eigentlich prüfen, ob ein include, require, include_on=
ce,
> require_once erfolgreich war oder nicht, sprich die Datei inkludiert
> werden konnte oder nicht.

require, require_once liefern im Erfolgsfall true zurück.

Bei include, include_once dürfte es mit Hilfe von $php_errormsg
gehen.

track_errors boolean

If enabled, the last error message will always be present in the
variable $php_errormsg.


tschuess
[|8:)
Sven Drieling [ Mo, 08 Oktober 2007 22:40 ] [ ID #1839515 ]

Re: OT: include-Frage

> Wie kann ich eigentlich prüfen, ob ein include, require, include_once,
> require_once erfolgreich war oder nicht, sprich die Datei inkludiert
> werden konnte oder nicht.

Am besten gar nicht - Du fängst davor einfach mit file_exists() ab, ob
eine Datei inkludiert werden kann oder nicht (also in Deiner
Konstellation mit dem autoloader ergibt das Sinn, bei lauter manuellen
includes natürlich nicht).

--
Mein Zeugs:
http://www.hadanite-marasek.de/classes.php
http://www.objektivsuche.de/
Ansonsten:
http://www.php-faq.de/q/q-newsgroup-wie-helfen.html
Hadanite Marasek [ Mo, 08 Oktober 2007 23:23 ] [ ID #1839516 ]

Re: OT: include-Frage

Hadanite Marasek schrieb:
>> Wie kann ich eigentlich prüfen, ob ein include, require, include_once,
>> require_once erfolgreich war oder nicht, sprich die Datei inkludiert
>> werden konnte oder nicht.
>
> Am besten gar nicht - Du fängst davor einfach mit file_exists() ab, ob
> eine Datei inkludiert werden kann oder nicht [..]

Anmerkung: Die reine Existenz der zu inkludierenden Datei ist wenig
hilfreich. PHP muss sie auch lesen können ;)

Gruß,
Torsten
thorny [ Di, 09 Oktober 2007 10:10 ] [ ID #1840495 ]
PHP » de.comp.lang.php.misc » Abbruch ohne Fehlermeldung

Vorheriges Thema: phpinfo öffentlich
Nächstes Thema: Notice: Constant WERT1 already defined in