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 :

Probleme avec un tableau en php


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 46
    Par défaut Probleme avec un tableau en php
    Bonjour,
    je debut en php en j'ai un petit probleme

    Je vous explique un peu le probleme j'ai une base de donnee deja faite
    dans cette base. J'ai un formulaire qui me permet de creer des domains propre à chaque utilisateur

    Cette page me permet bien d'afficher tout les domains creer par un utilisateur bien precis

    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
     
    <?php
    session_start();
    $base=mysql_connect('localhost','user','pass');
    mysql_select_db('dtc',$base);
    $owner=$_SESSION['adm_login'];
    //$name=$_SESSION['name'];
     
    echo" <html>";
    echo" <head>";
    echo" <title></title>";
    echo" </head>";
    echo" <body>";
     
    //On va faire un select sur les domains creer par cet utilisateur
    $sql="SELECT * FROM domain WHERE owner='$owner'";
    //$sql="SELECT * FROM domain";
    $resultat=mysql_query($sql);
    echo "<h1>voila vos domaines</h1> <br/>";
    echo "<table width=50% align=center border=1>";
    echo "<tr><td>Domain</td><td>Admin</td></tr>";
     
    while ($mydomain=mysql_fetch_array($resultat) ){
    $affiche=$mydomain['name'];
    //echo "$affiche <a href='propreaudomain.php'>voir</a><br />";
    echo "<tr>";
    echo "<td>$affiche</td>";
    echo "<td>";
    echo "<a href='propreaudomain.php?name=$affiche'> voir </a></td>";
    echo "</tr>";
     
    }
    echo "</table>";
    mysql_close();
    echo "<a href='membre.php'>Retour au menu principe </a></br>";
    echo "<a href='deconnexion.php'> Deconnexion </a>";
     
    echo"</body>";
    echo"</html>";
    ?>
    Et la tout se passe bien il m'affiche bien un tableau avec les domaines creer par cet utilisateur

    Lorsque je clique sur sur le lien "voir" qui se trouve en face du nom de domain il m'affiche le 1er element du tableau meme si je prend 2eme ou le 3eme je vous montre la page qui doit m'afficher le domaine selectionné

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    session_start();
    $base=mysql_connect('localhost','user','pass');
    mysql_select_db('dtc',$base);
    $owner=$_SESSION['adm_login'];
    $name=$_SESSION['name'];
    $sql="SELECT * from domain WHERE owner='$owner'";
    $resultat=mysql_query($sql);
    $mydomain=mysql_fetch_array($resultat);
    $affiche=$mydomain['name'];
    echo "$affiche";
    mysql_close();
     ?>

    Mon probleme se trouve à ce niveau lorsque je clique sur le lien voir pour afficher le domain selectionné il m'affiche toujours le meme
    domaine c'est à dire celui qui est en tete de liste j'aimerai avoir comment passé à sur un autre index je vous montre ma deuxieme page

    si quelqu'un a une idee je vous remercie d'avance

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 39
    Par défaut
    Bonsoir

    J'ai peut-être pas tout saisi mais à mon avis ton problème se trouve dans ton deuxième extrait de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $resultat=mysql_query($sql);
    $mydomain=mysql_fetch_array($resultat);
    $affiche=$mydomain['name'];
    echo "$affiche";

    Si tu ne boucles pas sur ton résultat, il t'affichera toujours la première ligne du table essaye ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $resultat=mysql_query($sql);
    while ($mydomain=mysql_fetch_array($resultat)) {
        $affiche=$mydomain['name'];
        echo "$affiche";
    }

  3. #3
    Membre émérite Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Par défaut
    Sur ta deuxième page,
    pour affiner ta requête sql,
    ne devrais-tu par récupérer le nom du domaine dans $_GET['name'] ?

    En effet, cette requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql="SELECT * from domain WHERE owner='$owner'";
    ne fait que relire la liste des domaines pour un utilisateur,
    liste dont le premier élément n'est pas forcément
    celui sur lequel on a cliqué sur la première page.
    Et la seule façon de connaître le domaine qui a été choisi pour cet utilisateur est de récupérer son nom passé dans l'url (?name=$affiche).

    Fred

  4. #4
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 46
    Par défaut
    Merci pour vos reponses peut etre que j'ai pas été assez precis dans mes explications mais j'ai pu corriger le probleme grace au explication de "micetf"
    effectivement il fallait faire appel au GET['name'] vu que le domain selectionné s'afficher dans l'url voila le code de la deuxieme page

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    session_start();
    $base=mysql_connect('localhost','user','pass');
    mysql_select_db('dtc',$base);
    $owner=$_SESSION['adm_login'];
    $affi=$_GET['name'];
    $sql="SELECT * from domain WHERE owner='$owner'";
    $resultat=mysql_query($sql);
    $mydomain=mysql_fetch_array($resultat);
    $affiche=$mydomain['name'];
    echo "$affi";
    mysql_close();
     ?>
    Merci encore

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

Discussions similaires

  1. un petit probleme avec la fonction include php
    Par Ricus28 dans le forum Langage
    Réponses: 7
    Dernier message: 20/08/2006, 14h27
  2. probleme avec un tableau de list
    Par jtlb++ dans le forum C++
    Réponses: 4
    Dernier message: 16/07/2006, 09h17
  3. Probleme avec un script javascript->php
    Par leluis dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 23/03/2006, 15h32
  4. Probleme avec un tableau
    Par Seth77 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 13/02/2006, 11h43
  5. Probleme avec un tableau
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 14
    Dernier message: 09/12/2005, 01h03

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