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

Langage PHP Discussion :

Notice: Undefined offset: 2 in


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 119
    Points : 41
    Points
    41
    Par défaut Notice: Undefined offset: 2 in
    Salut,

    J'utilise un script en ajax pour faire une liste deroulante qui fonctionne tres bien mais la j'ai cette erreur Notice: Undefined offset: 2 in j'ai beau chercher je ne vois pas le probleme, pour info voici le code

    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
    require("init.php");   
     
    $Ld1_retour =''; // clé de la liste déroulante 1
     
    if (isset($_GET['Ld1'])) {$Ld1_retour = $_GET['Ld1'];}
     
    if ($Ld1_retour!='') {
    	$rq="Select id, titre from ticket where catego=".$Ld1_retour." order by titre ASC";
     
    	$result= mysql_query ($rq) or die ("Selection impossible !!");
    	$retour = '<select name="Liste2" id="Liste2" size="1" class="Maroon_10px">';
    	$retour .= '<option selected value="0">'. utf8_encode('---Sélectionnez---') .'</option>';
     
    	if (mysql_num_rows($result) != 0) {
    		while ($row = mysql_fetch_row($result)) {
    			$retour .= '<option value="'. $row[0] .'">'. utf8_encode($row[1]) .'</option>';
    		}
    		$retour .= '</select>';
    	} else {
    		$retour = '<input id="Liste2" type="text" size="10" class="Maroon_10px" value="Aucune valeur" disabled>';
    	}
    	mysql_free_result($result);
    }else{
    	$retour = '<select name="Liste2" id="Liste2" size="1" disabled class="Maroon_10px"><option>Aucune valeur</option></select>';
    }	
    echo $retour;
    Si quelqu'un peu m'aider pour trouver d'ou vient le probleme.

    Merci de votre aide.

  2. #2
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 213
    Points : 111
    Points
    111
    Par défaut
    Undefine offset arrive quand tu tentes d'accèder à un élément qui n'existe pas. Typiquement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $tab= new array("toto","titi");
    echo $tab[2];
    Or dans ton code tu n'utilises pas de boucle avec index. J'aurais tendance à dire que l'erreur ne vient pas de ce fragment de code. A ce propos pourrais-tu mettre l'intégralité de l'erreur ça pourrait aider.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 119
    Points : 41
    Points
    41
    Par défaut
    voila ce que j'ai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Notice: Undefined offset: 2 in C:\wamp\http\ValideLd2.php on line 18
     
    Notice: Undefined offset: 2 in C:\wamp\http\ValideLd2.php on line 18
     
    Notice: Undefined offset: 2 in C:\wamp\http\ValideLd2.php on line 18
    Par contre j'ai bien dans ma seconde liste les elements qui s'affichent

    ici j'ai 3 erreurs car j'ai 3 elements dans ma seconde liste deroulante

  4. #4
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Tu pourrais poster le contenu complet de ValideLd2.php?

  5. #5
    Membre du Club
    Inscrit en
    Février 2005
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 47
    Points : 52
    Points
    52
    Par défaut normal
    Cela m'étonne que tu n'es pas eu le problème avant...

    dans ta requête tu recupère 2 champs

    donc quand tu fait un mysql_num_rows

    tu doit utiliser :
    $row[0] = champ 1
    et
    $row[1] = champs 2

    $row[2] = champs 3, hors tu n'en selectionne que 2 dans la requete

  6. #6
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 213
    Points : 111
    Points
    111
    Par défaut
    autre idée fais un print_r de ta variable que tu utilises dans la ligne 18. Si c'est un array tu auras son contenu et tu verras le nombre de "case" qu'il contient réelement.

    Après il faudrait voir comment tu remplis ta variable et voir comment tu l'utilises sur cette fameuse ligne 18.

Discussions similaires

  1. [MySQL] Notice: Undefined offset
    Par gaetanc15 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 30/04/2009, 16h16
  2. [Tableaux] Notice: Undefined offset
    Par KOogar dans le forum Langage
    Réponses: 16
    Dernier message: 02/02/2008, 02h44
  3. [Système] Notice: Undefined offset
    Par noname_971 dans le forum Langage
    Réponses: 2
    Dernier message: 22/01/2008, 14h02
  4. [Tableaux] Notice: Undefined offset: 5 in
    Par fast462 dans le forum Langage
    Réponses: 3
    Dernier message: 30/05/2007, 10h08
  5. erreur: "Notice: Undefined offset:"
    Par Sh1v3r dans le forum Langage
    Réponses: 2
    Dernier message: 17/06/2006, 22h48

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