Error - PHP

Lær at slå fejlbeskeder til i PHP med blandt andet error_reporting() så du får information om hvad der gik galt hvis koden ikke virker

Introduktion

Når man har skrevet PHP kode i noget tid finder man ud af at det er rigtig smart hvis man kan få nogle oplysninger om hvorfor koden ikke blev udført når der er sket fejl i stedet for blot at få en blank side.

Det er også rigtig smart at få at vide hvilken linje fejlen skete på.

Det kan spare en for en masse fejlfinding hvis man får en god fejlbesked når der sker en fejl.

Opsætning

For at fortælle PHP at vi gerne vil have besked når der sker en fejl kan vi skrive følgende før resten af koden så bliver der vist en god del fejlbeskeder i browseren når de sker.

Du bør kun vise fejlbeskeder på hjemmesiden når du udvikler din hjemmeside.
Når hjemmesiden er tilgængelig på internettet bør du skjule fejlbeskeder og i stedet gemme fejlbeskeder i en logfil.


Her er noget info fra php.ini filen der findes i mappen hvor PHP er installeret som fortæller om hvordan indstillingerne bør være.
Default Value er standard indstillingen.
Development Value er den indstilling der bør bruges på din localhost når du udvikler.
Production Value er den indstilling der bør bruges på dit webhotel når andre har adgang til hjemmesiden.

Error log

Fejlbeskederne kan også gemmes i en fil i stedet for at blive vist i browseren.
Det kan være en god ide at gemme fejlbeskederne i en fil og undlade at vise fejlbeskederne på hjemmesiden så brugerne kan se dem fordi de alligevel ikke har mulighed for at rette fejlene.

Hvis der sker en parse error gemmes fejlene dog ikke med denne metode.

Egen fejlbeskeds funktion

I stedet for at PHP skriver fejlbeskeder der hvor fejlen sker og ødelægger udseendet på hjemmesiden kan vi i stedet indsamle fejlbeskederne efterhånden som de sker og vise dem samlet på en flot måde.

Mine fejlbeskeder ser sådan her ud når jeg er logget ind på hjemmesiden.
fejlbeskeder fra PHP i browser
Jeg har valgt at vise mine fejlbeskeder nederst i browseren sådan at de ikke forstyrre.
Jeg har så gjort sådan at hvis der er fejl så vises der et ikon øverst på hjemmesiden med link til at hoppe ned til fejlbeskederne.

Hver gang der sker en fejl tilføjes fejlbeskeden til den globale variabel $fejlbeskeder.

Skriv din kommentar

Spørg mig om hvad som helst
Du kan også skrive direkte til mig på
Stem
Søg
Language

Select English to navigate the website in English. Things like the navigation menu and contact form will be in English, but the main content on each page will not be translated.