Erreur Undefined index

Résolu
julien0224 Messages postés 8 Statut Membre -  
boly38 Messages postés 267 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai besoin d'aide. Je vous explique...
J'ai fait sur ma base de donnée
ALTER TABLE produits ADD images_alt text NOT NULL;
tout c'est bien passé

Sur une autre page

Apres avoir fait la connexion avec la base de donnée, je fais un echo du champs images_alt
<?php echo $donnees['images_alt']; ?>

J'ai cette erreur:
Notice: Undefined index: images_alt in C:\wamp\www\monsite\XXX\modifier.php on line 126 Call Stack #TimeMemoryFunctionLocation 10.0007719384{main}( )..\modify.php:0

j'ai essayé de faire isset(...), mais à part retirer le message, rien n'est echo alors qu'il y a des données dans la base.

Dans le fond c'est qu'il ne trouve tout simplement pas le champs images_alt.
Ais-je mal fait le ALTER TABLE? ou il y a t-il un autre probleme?

Je suis débutant, donc si on pouvait m'indiquer la réponse et m'expliquer aussi, ce serait génial.
Merci

6 réponses

  1. Reivax962 Messages postés 3742 Statut Membre 1 011
     
    Bonjour,

    Tu as modifié ta table Produit, et tu fais ta requête sur ta table Images...

    Xavier
    2
    1. boly38 Messages postés 267 Date d'inscription   Statut Membre Dernière intervention   80
       
      très bon ;)
      0
  2. Titi La Fronde Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   4
     
    il nous faudrait ta requete ou tu place dans donnees le retour de l'array de ta table (vu que tu dois faire un select, puis un fetch_array)
    1
  3. boly38 Messages postés 267 Date d'inscription   Statut Membre Dernière intervention   80
     
    bonjour,
    Déjà vous pouvez faire un SELECT * depuis un client SQL comme phpMyAdmin par exemple pour voir effectivement si la colonne est présente (et bien déclarée, renseignée...).

    Ensuite il y a la commande php suivante qui peut être sympa : bool array_key_exists ( mixed $key , array $search )

    ici çà donnerai :
    <?php 
      $donneeImgAlt = (array_key_exists('images_alt', $donnees) ? $donnees['images_alt'] : '');
     ?> 
    

    puis plus loin (par exemple au sein d'une balise IMG ... :
    <?php echo $donneeImgAlt; ?> 
    
    1
  4. Acid_ Messages postés 661 Statut Membre 159
     
    Quelle requête fais-tu pour récupérer ces données ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. julien0224 Messages postés 8 Statut Membre
     
    Je fais comme ça.

    <?php
    include("includes/identification.php");

    // On protège la variable "modifier_image" pour éviter une faille SQL
    $id = mysql_real_escape_string(htmlspecialchars($_GET['idmodif']));

    // On récupère les infos de l'image correspondante
    $retour = mysql_query("SELECT * FROM images WHERE image_id= '$idmodif'");
    if(mysql_num_rows($retour)>0) {
    while ($donnees = mysql_fetch_array($retour))
    {
    ?>

    <?php echo $donnees['images_alt']; ?>

    <?php echo $donnees['images_name']; ?>
    <?php echo $donnees['images_color']; ?>

    <?php
    }
    }
    ?>

    Tout les autres echo marche sauf celui de images_alt
    Comme c'est le seul que j'ai rajouté en faisant AlTER TABLE, je me suis demandé si c'était pas à cause de ça.
    Si je l'avais pas mal fait ou je ne sais pas.

    Merci de m'aider
    0
  7. julien0224 Messages postés 8 Statut Membre
     
    Merci pour votre réponse après avoir été sur phpMyAdmin, j'ai remarqué que la colonne n'était tout simplement pas créée.
    Je l'ai créé à partir de phpMyAdmin et ça marche !

    Merci boly et Reivax962

    Reivax962 voilà pourquoi je ne l'ai pas trouvé lol
    Je ferai plus attention

    merci à vous tous.
    0