IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[PHPLIB] Obtention d'une erreur undefined index


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre habitué Avatar de duplo
    Inscrit en
    Octobre 2004
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Octobre 2004
    Messages : 294
    Points : 172
    Points
    172
    Par défaut [PHPLIB] Obtention d'une erreur undefined index
    Bonjour !
    je suis en train de me mettre au templates et evidament se merde ( normale sinon se seraait trop facile lol )
    j'ai sa :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
        <?php  
       include "librairies/template.inc";  
     
       $db = mysql_connect('localhost', 'root', '');   
       mysql_select_db('1and1',$db);   
      $sql = 'SELECT id,nom,user,mail FROM user';   
       $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());   
     
       $tpl = new template("gabarits");  
       $tpl->set_file("gliste","liste.html");  
     
       $tpl->set_block('gliste','1','bloc_1');  
     
       while($data = mysql_fetch_array($req)) {   
     
       $tpl->set_var("id", $data['id']);  
       $tpl->set_var("nom", $data['nom']);  
       $tpl->set_var("tel", $data['tel']);  
       $tpl->set_var("adresse", $data['adresse']);  
     
       $tpl->parse("bloc_1", "1", true);  
       }  
     
       mysql_close();   
     
       $tpl->pparse("affichage","gliste");  
       ?>
    tout ce passe convenablement sauf qu'en haut de la page, j'ai l'erreur :
    Notice: Undefined index: bloc_1 in y:\mes documents[...]\librairies\template.inc on line 211
    d'ou cela vient il?
    merci
    +
    pensez au

  2. #2
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Bonjour,
    l'erreur est dans template.inc, ligne 211, donc sans le bout de code correspondant, ca va etre dur de t'aider.
    A priori tu demandes un element qui n'existe pas dans un tableau (au hasard, un resultat de requete avec erreur dans l'appel du champ, ...).
    On attend la suite...

    Sohnic
    http://www.noctinfo.fr/

    (\ _ /)
    (='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
    (")-(")

  3. #3
    Membre habitué Avatar de duplo
    Inscrit en
    Octobre 2004
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Octobre 2004
    Messages : 294
    Points : 172
    Points
    172
    Par défaut
    je ne sais pas si il y en aura assé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
      /* public: get_var(string varname)
       * varname: name of variable.
       *
       * public: get_var(array varname)
       * varname: array of variable names
       */
      function get_var($varname) {
        if (!is_array($varname)) {
    /* ligne 211 */      return $this->varvals[$varname];
        } else {
          reset($varname);
          while(list($k, $v) = each($varname)) {
            $result[$k] = $this->varvals[$k];
          }
     
          return $result;
        }
      }
    si il y en faut plus dites moi le et je metrait tout le template.inc
    merci
    +
    pensez au

  4. #4
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Franchement, je ne saurais t'aider davantage, tu utilises une syntaxe dont je n'ai pas l'habitude, et je n'ai pas le temps de me pencher plus avant sur le probleme.
    Je pense que tu pourras aider les autres interlocuteurs en editant ton post et en indiquant ou est la ligne 211.
    Désolée pour toi, si j'arrive à finir plus tot, je rejeterai un oeil la dessus, ce soir.

    Bon courage,
    S.
    http://www.noctinfo.fr/

    (\ _ /)
    (='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
    (")-(")

  5. #5
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Le tout est de savoir d'où provient "bloc_1" ???
    Consultant idéaliste.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut J'utilise le meme systeme de template..
    Le probleme vient du fait qu'il te manque la balise "bloc_1" dans ton fichier template "liste.html"

    Ton fichier Doit comporter un bout de code de ce genre normalement.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <!-- BEGIN bloc_1 -->
    	<Code_HTML 
    	{ID} 
    	{nom}
    	{tel}
    	{adresse}
    	Code_HTML>
    <!-- END bloc_1 -->
    Donne nous la partie de code qui correspond à bloc_1 de ton ficher liste.html

  7. #7
    Membre habitué Avatar de duplo
    Inscrit en
    Octobre 2004
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Octobre 2004
    Messages : 294
    Points : 172
    Points
    172
    Par défaut
    bloc_1 vient de bloc dans la page html qui sapel 1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
       <!-- BEGIN 1 --> 
         <tr bgcolor="#000066">  
           <td><font face="Verdana" size="2" color="#FFFFFF">{id}</font></td>  
           <td><font face="Verdana" size="2" color="#FFFFFF">{nom}</font></td>  
           <td><font face="Verdana" size="2" color="#FFFFFF">{tel}</font></td>  
           <td><font face="Verdana" size="2" color="#FFFFFF">{adresse}</font></td>  
         </tr>  
           <!-- END 1 -->
    pensez au

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    Dans ton fichier template "liste.html" tu dois mettre le code :
    <!-- BEGIN bloc_1 -->
    et
    <!-- END bloc_1 -->

    en lieu et place de :
    <!-- BEGIN 1 --> et <!-- END 1 -->

  9. #9
    Membre habitué Avatar de duplo
    Inscrit en
    Octobre 2004
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Octobre 2004
    Messages : 294
    Points : 172
    Points
    172
    Par défaut
    Sa y est sa fonctionne merci beaucoup !
    mais encore une question pourquoi les données sont ecrites 2 foies?
    merci !
    +
    pensez au

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 109
    Points : 131
    Points
    131
    Par défaut
    Deux possibilites :
    Tu PARSE deux fois dans ta boucle While() !! dans ton fichier PHP
    Donc tu as codé deux fois "$tpl->parse("bloc_1", "1", true);"

    Ou tu as deux Balises "Bloc_1" ou deux fois le lot de balise "id","nom", etc .. dans ton fichier template !

  11. #11
    Membre habitué Avatar de duplo
    Inscrit en
    Octobre 2004
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Octobre 2004
    Messages : 294
    Points : 172
    Points
    172
    Par défaut
    Merci !
    +
    pensez au

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Obtention de diverses erreurs : undefined index et invalid resource
    Par kate59 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 04/02/2008, 11h51
  2. Réponses: 2
    Dernier message: 30/06/2007, 14h25
  3. Erreur : Undefined index !
    Par SebCBien dans le forum Langage
    Réponses: 3
    Dernier message: 21/08/2006, 11h27
  4. [Tableaux] Erreur Undefined index ?
    Par sharin dans le forum Langage
    Réponses: 5
    Dernier message: 28/04/2006, 09h40
  5. erreur undefined index
    Par istreen dans le forum Langage
    Réponses: 8
    Dernier message: 06/01/2006, 13h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo