Avatar billede webcreator Nybegynder
11. juli 2004 - 14:02 Der er 7 kommentarer og
1 løsning

error_reporting _ Undefined Index

Hej Eksperter.

Jeg har netop installeret EasyPHP på min maskine, for at kunne udvikle et par applikationer lokalt. Men jeg er træt af at få fejlen "Undefined Index" hver gang, at jeg har en kode i stil med:

$pageid = $_REQUEST["pageid"]; // POST og GET

Hvad bør jeg gøre i dette tilfælde? Ændre error_reporting i min php.ini fil til en anden værdi (i givet fald hvilken?).

Eller er der en metode i selve koden, som jeg bør bruge? Jeg er klar over, at jeg undgår udskrift af fejl ved brug af @ - men det er vel ikke løsningen her?
Avatar billede googolplex Novice
11. juli 2004 - 14:39 #1
E_ALL ^ E_NOTICE
Avatar billede jammerlab Nybegynder
11. juli 2004 - 15:15 #2
error_reporting = E_ALL & ~E_NOTICE
Avatar billede webcreator Nybegynder
11. juli 2004 - 18:22 #3
Jeg siger mange tak for svar :)
Avatar billede jakoba Nybegynder
11. juli 2004 - 21:47 #4
men det er nu ikke smart at slå notices fra når du debugger. de giver mange gode fingerpeg om de fejl du leder efter.

Så det bedste er at kode ordentligt:
$pageid = ( isset($_REQUEST["pageid"]) ) ? $_REQUEST["pageid"] : ""; // POST og GET

så kommer der ingen melding og du har styr på hvad der kommer til at stå i $pageid hvis der ikke var nogen parameter.

mvh JakobA
Avatar billede webcreator Nybegynder
11. juli 2004 - 22:57 #5
Jakob > Tak for det. Vil det sige at jeg skal skrive al den kode for hver variabel jeg benytter? Det virker overvældende. Hvad er "problemet" i at gøre det på den "nemme" måde? Ville de fleste ikke vælge blot at slå E_NOTICE fra på serveren?
Avatar billede jakoba Nybegynder
12. juli 2004 - 00:35 #6
jo det er det de fleste vælger. Og jeg synes det er et dumt valg :)
Det afskærer dig fra at få en masse fejlmeddelser der ellers kunne hjælpe dig.
Avatar billede jakoba Nybegynder
12. juli 2004 - 00:47 #7
$success = false;
$tekst = file( "fil_der_skal_ledes_i.txt" );
$i = 0;
$j = 0;
for ( $i=0; $i<count($tekst); i++ ) {
    if ( eregi( "olsen", $tekst[$i] ) ) {
        $success = true;
        echo $tekst[$i] ."<br>";
        $j++;
    }
}
if ( $succes ) {
    echo "Ordet 'olsen' blev fundet $j gange."
} else {
    echo "Ordet 'olsen' blev ikke fundet."
}

ka du finde fejlen?
Avatar billede webcreator Nybegynder
12. juli 2004 - 11:33 #8
Ja, det er klar at det ville være nemmere hvis man fik lidt output fra serveren :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester