ntec Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 Hvordan hindrer jeg php-fila i å sende ut feilmeldinger som dette til besøkende: Warning: file_get_contents(http://url) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error in /usr/home/web/file.php on line 5 At brukeren kan se en slik feilmelding, reduserer sikkereheten på websiden min betydelig! Takk for svar Lenke til kommentar
dabear Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 (endret) error_reporting(0) Endret 28. februar 2007 av dabear Lenke til kommentar
cronic Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 (endret) sett en @ framfor. Eksempel @file_get_contents() EDIT : Leste ikke posten din så godt. dabear har rett Endret 28. februar 2007 av cronic Lenke til kommentar
ntec Skrevet 28. februar 2007 Forfatter Del Skrevet 28. februar 2007 sett en @ framfor. Eksempel @file_get_contents() EDIT : Leste ikke posten din så godt. dabear har rett 8045439[/snapback] så med en @ foran file_get_contents() så er det 100% sikkert at det ikke blir returnert feilmelding til besøkende? Lenke til kommentar
Kagee Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 Var den feilmeldinga et eksempel, eller var det en faktisk feilmelding fra siden din? Du prøver jo å hente data fra en ugyldig nettadresse - eller slik ser der iallefall ut. http://no.php.net/@ Lenke til kommentar
Mads-b Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 (endret) Bruk @ hvis det er en spesifikk funksjon du ikke vil ha feilmeldinger på, og error_reporting(0); om du ikke vil se feilmeldinger i det hele tatt fra scriptet. Endret 28. februar 2007 av Mads-b Lenke til kommentar
ntec Skrevet 28. februar 2007 Forfatter Del Skrevet 28. februar 2007 Var den feilmeldinga et eksempel, eller var det en faktisk feilmelding fra siden din? Du prøver jo å hente data fra en ugyldig nettadresse - eller slik ser der iallefall ut. http://no.php.net/@ 8045681[/snapback] Det var en faktisk feilmelding fra siden min. Grunnen til at feilmeldingen kan oppstå er at file_get_contents() varierer etter hva brukerene skriver i en form, eller hvis den aktuelle siden er nede. Lenke til kommentar
Joakim Gjerde Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 hva med å legge inn en file_exists? if (file_exists($url)){ file_get_contents($url); } else { echo "Filen finnes ikke"; } Lenke til kommentar
ZoRaC Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 For det første så skal en nettside ALDRI generere verken warnings eller noticer, om den gjør det så har du programmert feil! Og ved å bruke error_reporting eller @ så fjerner du ikke feilen, bare meldingen. Du bør kjøre error_reporting(E_ALL) og få fjernet alle feil. Om du vil logge feilene i en tekst-fil kan du jo gjøre det, og slå av visning av feil (ini_set("display_errors, true) Lenke til kommentar
Peter Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 For det første så skal en nettside ALDRI generere verken warnings eller noticer, om den gjør det så har du programmert feil! Og ved å bruke error_reporting eller @ så fjerner du ikke feilen, bare meldingen. Du bør kjøre error_reporting(E_ALL) og få fjernet alle feil. Om du vil logge feilene i en tekst-fil kan du jo gjøre det, og slå av visning av feil (ini_set("display_errors, true) 8047353[/snapback] error_reporting( E_ALL | E_STRICT ); Lenke til kommentar
ntec Skrevet 28. februar 2007 Forfatter Del Skrevet 28. februar 2007 For det første så skal en nettside ALDRI generere verken warnings eller noticer, om den gjør det så har du programmert feil! Og ved å bruke error_reporting eller @ så fjerner du ikke feilen, bare meldingen. Du bør kjøre error_reporting(E_ALL) og få fjernet alle feil. Om du vil logge feilene i en tekst-fil kan du jo gjøre det, og slå av visning av feil (ini_set("display_errors, true) 8047353[/snapback] hvordan velger jeg hvilken fil det skal bli lagret i, da? Lenke til kommentar
Runar0 Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 (endret) nvm leste feil :/ Edit: Du kan lage en alternativ error handler, Se på set_error_handler, som logger alle feil til ei tekst fil. Endret 28. februar 2007 av Shadows0 Lenke til kommentar
ZoRaC Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 ini_set("log_errors", true); ini_set("error_log", "/path/til/fil.log"); Lenke til kommentar
ntec Skrevet 28. februar 2007 Forfatter Del Skrevet 28. februar 2007 ini_set("log_errors", true);ini_set("error_log", "/path/til/fil.log"); 8049199[/snapback] altså dette kan ikke gjøres i .php-fila, men må gjøres inni ei .ini fil? Lenke til kommentar
Kagee Skrevet 28. februar 2007 Del Skrevet 28. februar 2007 Nei, det er phpfuksjoner som midlertidig overskriver instillingene i php.ini. De skal i ei phpfil. Lenke til kommentar
magicgunnar Skrevet 1. mars 2007 Del Skrevet 1. mars 2007 ini_set("log_errors", true);ini_set("error_log", "/path/til/fil.log"); 8049199[/snapback] altså dette kan ikke gjøres i .php-fila, men må gjøres inni ei .ini fil? 8049705[/snapback] Fordelen med å eventuelt sette de i php.ini er vel at innstillingene da gjelder for alle php-filer på serveren. Det jeg lurer på er om det går an å overstyre php.ini for en hel katalog, ikke bare for enkeltfiler? Eventuelt hvordan man gjør det? Lenke til kommentar
Kagee Skrevet 1. mars 2007 Del Skrevet 1. mars 2007 http://www.karakas-online.de/EN-Book/chang...parameters.html Slik - hvis du har lov Lenke til kommentar
ntec Skrevet 13. mars 2007 Forfatter Del Skrevet 13. mars 2007 (endret) ey folks. mens vi er inne på temaet "å overstyre php.ini" hva konkret må jeg skrive for å få denne til å fungere i praksis? php_value memory_limit "16M" hvor skal jeg skrive det? hvordan? Kan jeg få et eksempel? Endret 13. mars 2007 av ntec Lenke til kommentar
chrononaut Skrevet 14. mars 2007 Del Skrevet 14. mars 2007 php_value direktiv hører hjemme i .htaccess filer. Evt. så kan du bruke ini_set(), som vist ovenfor. Lenke til kommentar
ntec Skrevet 14. mars 2007 Forfatter Del Skrevet 14. mars 2007 php_value direktiv hører hjemme i .htaccess filer. Evt. så kan du bruke ini_set(), som vist ovenfor. 8150082[/snapback] skal jeg bare sette dette øverst i phpfila? ini_set(php_value memory_limit "16M"); ? Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå