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 :

Lire le contenu d'une table MySQL [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 486
    Billets dans le blog
    1
    Par défaut Lire le contenu d'une table MySQL
    Bonjour,

    je cherche à lire le contenu d'une table, mais ça ne marche pas et ne vois pas l'erreur.
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $sql= 'select nom,prenom,cat,date,mail,type from `fichiers1`';
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
    $ligne1 = mysql_fetch_array($result, MYSQL_NUM);
    $nom=$ligne[0];
    $sql= "INSERT into `espion` (_sql) VALUES('".$nom."')";
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
    Le nom "_sql" est historique et je ne l'ai pas changé.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2004
    Messages
    803
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 803
    Par défaut
    Bonjour,

    Je ne vois aucun endroit où tu boucles sur toutes les lignes retournées par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $result = mysql_query($sql) or die(mysql_error());
    pour les traiter. De plus, dans cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $ligne1 = mysql_fetch_array($result, MYSQL_NUM);
    tu utilises $ligne1, tandis que dans celle-ci tu utilises un autre nom de variable ($ligne).

  3. #3
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 486
    Billets dans le blog
    1
    Par défaut
    Merci, et encore une fois, un oeil extérieur m'a été utile : en lisant $ligne1[0], ça marche mieux qu'avec $ligne[0]...

  4. #4
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 486
    Billets dans le blog
    1
    Par défaut
    Nouveau problème de lecture d'une table : je lis une table qui visiblement contient une ligne, et pas moyen de lire celle-ci !
    Voici mon 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
     
    $sql= 'SELECT id_fichiers2,nomfichier from `fichiers2`';
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
    $num_rows = mysql_num_rows($result);
     
    // deb
    $texte="ici 1 ".$num_rows;
    $sql= "INSERT into `espion` (_sql) VALUES('".ES($texte)."')";		
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
    // fin (La table au-dessus contient une ligne)
     
    while ($ligne1 = mysql_fetch_array($result, MYSQL_NUM)) {
    // deb
     $texte="ici 2";
    $sql= "INSERT into `espion` (_sql) VALUES('".ES($texte)."')";		
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
     
    // fin	(on ne passe jamais dans le while juste au-dessus ; pourquoi ?)	
    if ($ligne1[1]==$nom_fichier)...
    Si j'utilise MySQL pour faire des traces, c'est car l'affichage n'est pas possible.

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ton code n'a aucun sens.
    Tu n'aurais pas fait une erreur de copier/coller ; tu as en particulier deux fois la même requête INSERT.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 486
    Billets dans le blog
    1
    Par défaut
    Ce ne sont pas exactement les mêmes requêtes : le contenu de la variable $texte est différent (et ce type de trace est dû à l'impossibilité de l'affichage). Pour clarifier le code, j'ai viré les traces et laissé uniquement la partie utile :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $sql= 'SELECT id_fichiers2,nomfichier from `fichiers2`';
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
    $num_rows = mysql_num_rows($result);
     
    // deb
    // fin (La table au-dessus contient une ligne)
     
    while ($ligne1 = mysql_fetch_array($result, MYSQL_NUM)) {
    // deb	
    // fin	(on ne passe jamais dans le while juste au-dessus ; pourquoi ?)	
    if ($ligne1[1]==$nom_fichier)...Si j'utilise MySQL pour faire des traces, c'est car l'affichage n'est pas possible.
    La variable $nom_fichier est obtenue par un SELECT un peu avant.

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

Discussions similaires

  1. [MySQL] recuperer le contenu d'une table mysql dans un menu deroulant
    Par Abou Zar dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 22/02/2010, 17h49
  2. [MySQL] Afficher le contenu d'une table MYSQL selon un critère bien défini
    Par Webnadou dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 28/09/2007, 21h38
  3. [Prototype] Afficher le contenu d'une table MySQL
    Par Claire.Heitz dans le forum Bibliothèques & Frameworks
    Réponses: 4
    Dernier message: 22/08/2007, 00h10
  4. Réponses: 2
    Dernier message: 09/11/2006, 09h59
  5. Réponses: 5
    Dernier message: 19/06/2006, 23h22

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