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

PHP & Base de données Discussion :

liste liée problèmes avec mysql_fetch [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 57
    Par défaut liste liée problèmes avec mysql_fetch
    bonjour, voila sur mon site ai besoin de liste liée pour les communes de france...

    mais quand je charge ma page avec mon formulaire j'ai le message

    "Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home.25/i/m/m/immostop/www/ville.php on line 34"

    voici le script de la page ville.php
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    <?
    $table = "villes";
     
    include("alexandre.php");
     
    switch($q=@$_GET["q"]) {
     
       case "1": // Liste des codes postaux
          $query  = "SELECT DISTINCT Codepos FROM $table"
             . " WHERE Departement = '".$_POST["champ"]."' ORDER BY 1"; 
     
       case "2": // Liste des communes
          if(!@$query) $query  = "SELECT Commune,INSEE FROM $table"
             . " WHERE Codepos = '".$_POST["champ"]."' ORDER BY 1";
     
          echo 'var o = null;';   
          echo 'var s = document.forms["'.$_POST["form"].'"].elements["'.$_POST["select"].'"];';   
          echo 's.options.length = 0;';
     
          if($q<2) echo 's.options[s.options.length] = new Option("Choisir","");';
     
          $result = @mysql_query($query);   
          while($r = mysql_fetch_array($result))   
             echo 's.options[s.options.length] = new Option("'.$r[0].'","'.((@$r[1])?$r[1]:$r[0]).'");';
     
          echo 'update('.$q.');';
          break;
     
     
    default: // Liste des départements
          $liste_dpt = "";
          $SQL = "SELECT DISTINCT Departement FROM $table";
          $res = @mysql_query($SQL);
          while($val = mysql_fetch_array($res))
             $liste_dpt.= "<option value=\"".$val[0]."\">".$val[0]."</option>\n";
     
          // Nom de la commune d'après le code INSEE
          if(@$adresse["INSEE"]) {
             $SQL = "SELECT Commune FROM $table WHERE INSEE='".$adresse["INSEE"]."'";
             $res = mysql_query($SQL);
             $adresse["Commune"] = mysql_result($res,0,0);
          }
    }
     
    @mysql_close();
    ?>
    pouvez vous m'aider ?

  2. #2
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    1 - et c'est laquelle la ligne 34 ? y'a rien avant le code ou y'a tout ?

    2 - vire les @ partout... et remplace les appels à mysql_query par des lignes de ce genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $res = mysql_query($SQL) or die(mysql_error());
    Après on verra...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 57
    Par défaut
    La ligne 34 est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while($val = mysql_fetch_array($res))
    j'ai fais les changement mais maintenant il me dit "no database selected"

  4. #4
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Ah bah voilà qui est plus parlant (pour info les @ cachent les messages d'erreur donc c'est à prohiber sauf dans des cas bien spéciaux).

    J'ai l'impression que tu n'as pas fait de mysql_connect avant de lancer ta requête

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 57
    Par défaut
    super ca marche grand merci

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

Discussions similaires

  1. [KUBUNTU] Liste de problèmes avec Feisty Fawn
    Par madmox dans le forum Ubuntu
    Réponses: 2
    Dernier message: 21/06/2007, 16h47
  2. [AJAX] Trois listes liées
    Par jason69 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 30/03/2007, 20h23
  3. Utilisation des liste liées (ajax) avec du perl
    Par Jim_Nastiq dans le forum Web
    Réponses: 1
    Dernier message: 12/07/2006, 12h07
  4. [Liste Modifiable] Problème avec la valeur par défault
    Par fusion_sadam dans le forum Access
    Réponses: 3
    Dernier message: 16/06/2006, 11h00
  5. [std::list][find_if] problème avec mes foncteurs
    Par n!co dans le forum SL & STL
    Réponses: 12
    Dernier message: 04/02/2005, 11h56

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