Skript bricht ab!

Moin,

Frage:

Trotz error_reporting(E_ALL) bricht mein Skript ohne Fehlerausgabe die
Bearbeitung ab.

Alle Log-Dateien zeigen nichts an.

Verwendet: PHP5

Wie kann ich den Fehler einkreisen?

Danke und Gruß
Anne
Rainer Hinz [ Mi, 12 September 2007 12:32 ] [ ID #1818757 ]

Re: Skript bricht ab!

Anne Kaeppes schrieb:
> Trotz error_reporting(E_ALL) bricht mein Skript ohne Fehlerausgabe die
> Bearbeitung ab.

"display_errors" auch angeschaltet in der php.ini?

--
Mit freundlichen Grüßen,
Christoph Herrmann

http://dragonprojects.de/
Christoph Herrmann [ Mi, 12 September 2007 10:46 ] [ ID #1818759 ]

Re: Skript bricht ab!

Christoph Herrmann wrote:
> Anne Kaeppes schrieb:
>> Trotz error_reporting(E_ALL) bricht mein Skript ohne Fehlerausgabe die=

>> Bearbeitung ab.
>
> "display_errors" auch angeschaltet in der php.ini?

Ja, natürlich, die Fehler werden ansonsten auch angezeigt.

Ich habe den Fehler auch gefunden, eine mittels require() eingebundene
Datei hatte einen Syntax Fehler, was mich ziemlich entsetzt, dass mir
PHP sowas nicht nennen kann.

Ratlos...

Anne
Rainer Hinz [ Mi, 12 September 2007 12:51 ] [ ID #1818760 ]

Re: Skript bricht ab!

Anne Kaeppes schrieb:
> Ich habe den Fehler auch gefunden, eine mittels require() eingebundene
> Datei hatte einen Syntax Fehler, was mich ziemlich entsetzt, dass mir
> PHP sowas nicht nennen kann.

eigentlich sollte es das auch.

--
Mit freundlichen Grüßen,
Christoph Herrmann

http://dragonprojects.de/
Christoph Herrmann [ Mi, 12 September 2007 11:07 ] [ ID #1818761 ]

Re: Skript bricht ab!

Christoph Herrmann schrieb:
> Anne Kaeppes schrieb:
>> Ich habe den Fehler auch gefunden, eine mittels require() eingebundene
>> Datei hatte einen Syntax Fehler, was mich ziemlich entsetzt, dass mir
>> PHP sowas nicht nennen kann.
>
> eigentlich sollte es das auch.

Note: Although display_errors may be set at runtime (with ini_set()),
it won't have any affect if the script has fatal errors. This is because
the desired runtime action does not get executed. [1]

[1] http://de.php.net/manual/en/ref.errorfunc.php#ini.display-er rors


Vielleicht mal direkt in der php.ini einstellen.


Gruß,
Habbo
bruening [ Mi, 12 September 2007 11:14 ] [ ID #1818764 ]

Re: Skript bricht ab!

Christoph Herrmann wrote:
> Anne Kaeppes schrieb:
>> Ich habe den Fehler auch gefunden, eine mittels require() eingebundene
>> Datei hatte einen Syntax Fehler, was mich ziemlich entsetzt, dass mir
>> PHP sowas nicht nennen kann.
>
> eigentlich sollte es das auch.

PHP5 schwächelt da manchmal ein wenig wenn man nur E_ALL angibt. Ich
hatte das Problem auch vor kurzen. Aber mit Debugging und nen bischen
Breakpointgeschiebe und Variablenüberwachung wars dann wiederum schnell
gefunden.

Wenn ich mich recht entsinne war das Problem ein Interface wo ich
fälschlicherweise einen typisierten Parameter einer Methodendefinition
als string festgelegt hatte.

Wenn man noch E_STRICT dazu nimmt wird auch sowas angezeigt.

MfG, Ulf

--
_,
_(_p> Ulf [Kado] Kadner
\<_)
^^
Ulf Kadner [ Mi, 12 September 2007 11:26 ] [ ID #1818766 ]

Re: Skript bricht ab!

Anne Kaeppes schrieb:
> Moin,
>
> Frage:
>
> Trotz error_reporting(E_ALL) bricht mein Skript ohne Fehlerausgabe die
> Bearbeitung ab.
>
> Alle Log-Dateien zeigen nichts an.
>
> Verwendet: PHP5
>
> Wie kann ich den Fehler einkreisen?

Ich hatte das Problem mal bei einem Heap-Overflow, ungefähr so:

function bla()
{
return bla();
}

Keine Ahnung, ob sich der Fehler inzwischen anders bemerkbar macht, ich
produziere den nicht so gerne und vermeide ihn daher, wo es geht ;-)

Daniel
Daniel Fett [ Mi, 12 September 2007 14:14 ] [ ID #1818781 ]

Re: Skript bricht ab!

> Frage:
>
> Trotz error_reporting(E_ALL) bricht mein Skript ohne Fehlerausgabe die
> Bearbeitung ab.
>
> Alle Log-Dateien zeigen nichts an.
>
> Verwendet: PHP5
>
> Wie kann ich den Fehler einkreisen?
>
> Danke und Gruß
> Anne

Komplett weisser Bildschirm? Oder Abbruch mittendrin? Bei einer komplett
leeren Seite ist vermutlich PHP aufgrund eines segmentation fault
abgeraucht, DANN wird die Fehlersuche erst richtig spassig.

--
Mein Zeugs:
http://www.hadanite-marasek.de/classes.php
http://www.objektivsuche.de/
Hadanite Marasek [ Mi, 12 September 2007 20:18 ] [ ID #1818806 ]

Re: Skript bricht ab!

Daniel 'Ingrid' Fett schrieb:
> Anne Kaeppes schrieb:
>> Moin,
>>
>> Frage:
>>
>> Trotz error_reporting(E_ALL) bricht mein Skript ohne Fehlerausgabe die
>> Bearbeitung ab.
>>
>> Alle Log-Dateien zeigen nichts an.
>>
>> Verwendet: PHP5
>>
>> Wie kann ich den Fehler einkreisen?
>
> Ich hatte das Problem mal bei einem Heap-Overflow, ungefähr so:
>
> function bla()
> {
> return bla();
> }
>
> Keine Ahnung, ob sich der Fehler inzwischen anders bemerkbar macht, ich
> produziere den nicht so gerne und vermeide ihn daher, wo es geht ;-)

Hier in einer fast aktuellen 5er-Version kommt immer noch ein leeres
Dokument beim Aufruf besagter Funktion.

Daniel
Daniel Fett [ Mi, 12 September 2007 20:28 ] [ ID #1818808 ]

Re: Skript bricht ab!

Ulf Kadner schrieb:

> Wenn man noch E_STRICT dazu nimmt wird auch sowas angezeigt

Wie macht man das?

Martin
Martin Lemke [ Mi, 12 September 2007 23:49 ] [ ID #1818813 ]

Re: Skript bricht ab!

Martin Lemke schrieb:

> Ulf Kadner schrieb:
>
> > Wenn man noch E_STRICT dazu nimmt wird auch sowas angezeigt
>
> Wie macht man das?

Da E_ALL das E_STRICT (noch nicht) enthält, muss man es extra mit angeben:
| error_reporting(E_ALL | E_STRICT);
(oder entpr. in php.ini)

Im kommenden PHP6 ist E_STRICT dann in E_ALL enthalten.

Gruß
Carsten
Carsten Wiedmann [ Do, 13 September 2007 00:45 ] [ ID #1818816 ]

Re: Skript bricht ab!

Anne Kaeppes schrieb:

> Trotz error_reporting(E_ALL) bricht mein Skript ohne Fehlerausgabe die
> Bearbeitung ab.

Das e_strict hast Du ja schon empfohlen bekommen. Jetzt würde ich mit
trivialen echos und Kommentaren arbeiten.
Echo vor dem Problem, Kommentar um Funktion auszuklammern. usw.
So kannste den Fehler einkreisen. Ist zwar nicht professionell, aber
meiner Meinung nach einfach umzusetzen.

Gruss, Markus

--
Sehr zu empfehlen:

http://www.google.ch/ oder .de/ oder .com/ usw.
Markus Grob [ Do, 13 September 2007 12:19 ] [ ID #1819665 ]

Re: Skript bricht ab!

Markus Grob schrieb:

> Jetzt würde ich mit
> trivialen echos und Kommentaren arbeiten.
> Echo vor dem Problem, Kommentar um Funktion auszuklammern. usw.
> So kannste den Fehler einkreisen. Ist zwar nicht professionell, aber

Warum soll das nicht professionell sein? Das ist eine klassische
Methode, die auch heute noch durchaus ihre Berechtigung hat. Auch Profis
benutzen das.

Gruß. Claus
Claus Reibenstein [ Do, 13 September 2007 13:25 ] [ ID #1819667 ]

Re: Skript bricht ab!

Claus Reibenstein schrieb:

[echo(), Kommentare]
> Warum soll das nicht professionell sein? Das ist eine klassische
> Methode, die auch heute noch durchaus ihre Berechtigung hat. Auch Profis
> benutzen das.

Nun, es ist halt eine Suche, bei der man sich einfach herantastet und
manchmal nur einen Folgefehler abfängt, je nach Ursache.

Ich verwende es auch, doch manchmal bleibt so die wahre Ursache
verborgen und man eliminiert nur die Symptome.

Ist halt von Vorteil, wenn man den Fehler schon aus der Codeanalyse
herausfindet, doch dazu bin ich meist erst hinterher genügend schlau ;-)

Gruss, Markus

--
Sehr zu empfehlen:

http://www.google.ch/ oder .de/ oder .com/ usw.
Markus Grob [ Do, 13 September 2007 14:51 ] [ ID #1819675 ]

Re: Skript bricht ab!

Markus Grob schrieb:

> [echo(), Kommentare]
>> Warum soll das nicht professionell sein? Das ist eine klassische
>> Methode, die auch heute noch durchaus ihre Berechtigung hat. Auch Profis
>> benutzen das.
>
> Nun, es ist halt eine Suche, bei der man sich einfach herantastet und
> manchmal nur einen Folgefehler abfängt, je nach Ursache.

Dann automatisiere das. Nennt sich Delta Debugging.

> Ich verwende es auch, doch manchmal bleibt so die wahre Ursache
> verborgen und man eliminiert nur die Symptome.

Dann hast du schlecht gesucht.

Gruß,
Torsten
thorny [ Do, 13 September 2007 14:57 ] [ ID #1819676 ]

Re: Skript bricht ab!

Carsten Wiedmann schrieb:
> Im kommenden PHP6 ist E_STRICT dann in E_ALL enthalten.

Soweit ich mitbekommen hab bricht in PHP6 dann der Parser auch ab, wenn
man Dinge versucht, die in PHP 5 umgestellt wurden und mit E_STRICT
gemeldet wurden (Beispiel Name der Klasse und Konstruktor gleich), oder?

--
Mit freundlichen Grüßen,
Christoph Herrmann

http://dragonprojects.de/
Christoph Herrmann [ Do, 13 September 2007 15:42 ] [ ID #1819683 ]

Re: Skript bricht ab!

Claus Reibenstein schrieb:
> Warum soll das nicht professionell sein? Das ist eine klassische
> Methode, die auch heute noch durchaus ihre Berechtigung hat. Auch Profis
> benutzen das.

ich würde in so einem Fall lieber Debuggen bevorzugen, wenn man diese
Möglichkeit in seiner PHP Entwicklungsumgebung besitzt.

Habe es zwar in PHP selbst noch nie benutzt, aber in C++ oder Java
möchte ich nicht mehr ohne Debugger arbeiten wollen, wenn zum Beispiel
mal eine Unhandled Exception oder eine Speicherzugriffsverletzung
stattfindet.

--
Mit freundlichen Grüßen,
Christoph Herrmann

http://dragonprojects.de/
Christoph Herrmann [ Do, 13 September 2007 15:45 ] [ ID #1819684 ]
PHP » de.comp.lang.php.misc » Skript bricht ab!

Vorheriges Thema: File Upload
Nächstes Thema: wysiwyg editor - fckeditor