Pb en php undefined index

Bahan -  
PhP Messages postés 1774 Statut Membre -
Bonjour a tous (et a toutes)!
alors j'ai un ptit pb en php :

//j'utilise bcp de fois ce switch donc je l'ai mis en fonction ^_^
function raccourci($i){
switch($i){
case 10:$k="a";break;
case 11:$k="b";break;
case 12:$k="c";break;
case 13:$k="d";break;
case 14:$k="e";break;
case 15:$k="f";break;
default:$k=$i;break;
}
return $k;
}

puis :

function recup($resultat2)
for($i=0;$i<16;$i++){
$k=raccourci($i);
$var="f".$k; //j'ai 16 champs nomme f0,f1,...,ff
print($resultat2[$var]);
}
}

enfin j'appelle la fonction recup dans mon script :

$result=mysql_query("marequete");
$tab=mysql_fetch_array($result);
recup($tab);

et en fait j'ai un message d'erreur au niveau de ma ligne print($resultat2[$var]); qui est "undefined index f0"

pourtant $tab["f0"] me renvoie bien ce que je veux. Mais j'ai quand meme ce message d'erreur.

Quelqu'un pourrait m'expliquer pourquoi svp ?
Merci d'avance.

Bahan

"Close the world..txen eht nepO"

5 réponses

  1. esox_ch Messages postés 770 Statut Membre 49
     
    puis :

    function recup($resultat2)
    for($i=0;$i<16;$i++){
    $k=raccourci($i);
    $var="f".$k; //j'ai 16 champs nomme f0,f1,...,ff
    print($resultat2[$var]);
    }
    }

    Je suis pas sur de mon coup, mais je crois qu'il y a une { qui manque apres fonction($resultat2)...

    Eternel Questionneur. Seul et Unique membre de la : SPdLM
    => Société Protectrice des Languages Maltraités
    0
  2. kerbiche_h Messages postés 5 Statut Membre
     
    Salut je viens de consulter ton exposé :
    et je pense qu'on doit rajouter les guillmets ,
    dans $resultat2[$var]
    pour obtenir $resultat2["$var"] .
    Pour indiquer qu'il s'agit de l'index du tableau

    la fonction recup sera alors à mon avis

    function recup($resultat2)
    for($i=0;$i<16;$i++){
    $k=raccourci($i);
    $var="f".$k; //j'ai 16 champs nomme f0,f1,...,ff
    print($resultat2["$var"]);
    }
    }

    bon courage
    0
  3. esox_ch Messages postés 770 Statut Membre 49
     
    Kerbiche, faut m'expliker comment ca se fait qu'il y aie un seul {et 2} dans le code...

    Eternel Questionneur. Seul et Unique membre de la : SPdLM
    => Société Protectrice des Langages Maltraités
    0
  4. kerbiche_h Messages postés 5 Statut Membre
     
    Salut
    c'est une erreur de frappe de ma part j'ai recopier votre code source, et j'ai du me trompre mais dit moi si tu arrive juste en rajoutant juste les guillemet à ton code

    au fait la fonction serait
    function recup($resultat2)
    for($i=0;$i<16;$i++){
    $k=raccourci($i);
    $var="f".$k; //j'ai 16 champs nomme f0,f1,...,ff
    print($resultat2["$var"]);
    }
    a + bon courage
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. PhP Messages postés 1774 Statut Membre 606
     
    Bsr

    Y'a une erreur dans le code : il manque une accolade qui indique le début de la fonction avant le for et à la fin

    Voilà la bonne syntaxe :

    function recup($resultat2) 
    
    {
    for($i=0;$i<16;$i++)
    {
    $k=raccourci($i);
    $var="f".$k; //j'ai 16 champs nomme f0,f1,...,ff
    print($resultat2["$var"]);
    }
    }


    En plus ca me permet d'utiliser le nouveau style de mise en page : bouton [Code] dans les messages

    @+
    PhP
    [[  The Truth is Out There   ]]
    0