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 :

[Tableaux] debutant en php


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut [Tableaux] debutant en php
    salut a tous
    j'ai un petit soucis de passage de parametres
    dans lien hypertexte du style:
    <a href="mapage.php?p_id=<?echo $rs[0]?>"
    mon soucis reside dans le fait que j'ai une requete qui appelle plusieurs TABLES et que lorsque je pointe sur liens le parametre "p_id=1" qui devrait normalement apparraitre n'apparait pas.
    je suppose que c'est a cause du nombre de table implementé dans ma requete mais je n'ai pas trouvé la solution pour identifier la table auquel appartient le parametre que je veux envoyer sur ma page
    merci de votre aide et a tres vite

  2. #2
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    J'ai peur de ne pas avoir bien cerné ta question (tes questions ?)...
    Est-ce que tu veux dire que le paramètre p_id est affiché vide dans l'URL quand tu cliques dessus ?
    La requête dont tu parles se situe-t-elle en amont ou bien en aval de l'affichage de ton lien ? Le fait est que l'on a très souvent une requête avant et une autre après...

  3. #3
    Membre actif
    Avatar de Wormus
    Inscrit en
    Septembre 2005
    Messages
    262
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 262
    Points : 276
    Points
    276
    Par défaut
    J'ai du mal à cerner ton problème :

    Ton problème ne vient pas de ton passage de variable ?? quand tu est sur ta page d'arrivé tu récupère bien ton p_id ??

    Apparemment ton problème vient de ta requête, si je comprend bien le problème c'est que je ne peux pas t'aider si je ne connais pas ta requête ou les tables de ta base ou ce que tu veux faire !

    Tu donnes pas assez d'élément pour pouvoir répondre à ton problème
    Bankaï !!

  4. #4
    Futur Membre du Club
    Inscrit en
    Février 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    voici mon code :

    //se connecter à msql
    include("Includes\_connexion.php");
    //récupérer les données de la table section
    $sql="SELECT nom, prenom, adresse, ville, cp,date_naissance as 'date de naissance', tel_dom AS 'telephone domicile', tel_portable AS 'n° portable', nationalite, taille, poids, sexe, technique.ceinture, technique.grade,catégorie.categorie
    FROM adherent, technique, r_adh_tech,catégorie,r_adh_cat
    WHERE enable =1
    AND idsection =3
    AND adherent.id = r_adh_tech.idadherent
    AND technique.id = r_adh_tech.idtechnique
    and adherent.id=r_adh_cat.idadherent
    and catégorie.id=r_adh_cat.idcategorie";

    //exécuter la requête
    $rs=mysql_query($sql,$cnn) or die ("requête invalide");
    //$nomb_lignes=mysql_num_rows($rs);

    while ($row = mysql_fetch_row($rs)) {
    echo '<tr>';

    for ($j = 0; $j < count($row); $j++) {
    echo '<td>';
    echo ($row[$j] == NULL) ? '<i>NULL</i>' : $row[$j];
    }
    }

    ?>

    <td width="50" align="center"><a href="delete_adherent.php?idadh=<?echo $rs[0]?>">
    <img src="../templates/images/delete.gif" border="0"></a></td>

  5. #5
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Maintenant, je comprends mieux pourquoi tu ne t'y retrouvais pas ^^

    Essaie de lire ce code, pour voir si ça va mieux :

    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
    48
    49
    50
    51
    <?php
     
    //se connecter à msql
    include('Includes\_connexion.php');
     
    //récupérer les données de la table section
    $sql =   'SELECT a.id, a.nom, a.prenom, a.adresse, a.ville, a.cp, 
                a.date_naissance AS `date de naissance`, 
                a.tel_dom AS `telephone domicile`, a.tel_portable AS `n° portable`, 
                a.nationalite, a.taille, a.poids, a.sexe, 
                technique.ceinture, technique.grade, 
                catégorie.categorie
             FROM adherent AS a
             INNER JOIN r_adh_tech
                ON a.id = r_adh_tech.idadherent
             INNER JOIN technique
                ON technique.id = r_adh_tech.idtechnique
             INNER JOIN r_adh_cat
                ON a.id = r_adh_cat.idadherent
             INNER JOIN catégorie AS c
                ON catégorie.id = r_adh_cat.idcategorie
             WHERE enable = 1
                AND idsection = 3';
     
    //exécuter la requête
    $result = mysql_query($sql, $cnn)
       or die ('requête invalide : <br />'.mysql_error());
     
    //$nomb_lignes=mysql_num_rows($result);
     
    while ($adherent = mysql_fetch_assoc($result)) {
       ?>
       <tr>
          <?php
          foreach($adherent as $champ => $valeur){
             $string = $valeur ? $valeur : '<i>NULL</i>';
             ?>
             <td><?php echo $champ.' : '.$string; ?></td>
             <?php
          }
          ?>
       </tr>
       <tr>
          <td colspan="<?php echo count($adherent); ?>" align="center">
             <a href="delete_adherent.php?idadh=<?php echo $adherent['id']; ?>"><img src="../templates/images/delete.gif" border="0"></a>
          </td>
       </tr>
       <?php
    }
     
    ?>
    J'ai ajouté un champ `id` dans ta requête, je ne sais pas comment il s'appelle en réalité mais il est nécessaire à ton lien.
    Mon conseil : utilise tant que possible des noms de variables qui veulent dire quelque chose (sémantique), c'est très important pour arriver à se relire.

    Sinon, tu ne pouvais pas récupérer l'id en dehors de la boucle et encore moins à partir de la variable $rs car elle ne contenait aucune donnée brute, ce n'était qu'un résultat de MySQL.

  6. #6
    Futur Membre du Club
    Inscrit en
    Février 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut

    merci pour tes reponses mais en fait cette requete me permet d'afficher
    certains elements dont j'ai besoin a l'affiche qui existe dans certaine tables
    cependants si il est vrai que j'ai besoin de l'identifiant pour le passer en parametre (par exemple si je veux supprimer un enregistrement celui ci n'est reparable que par son identifiant) je n'en ai pas besoin a l'affichage
    donc ta solution est bonne si je veux faire apparaitre le n° d'identifiant

  7. #7
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Eh bien, au lieu de faire un foreach de fainéant comme ce que je t'ai indiqué ci-dessus, tu affiches les champs un par un. C'est plus fastidieux mais ça te donne un plus grand contrôle sur l'affichage. C'est même un peu plus propre, niveau code.

  8. #8
    Futur Membre du Club
    Inscrit en
    Février 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    merci Kirkis
    tes conseille m'ont été tres precieux et bien utile
    j'espere que si j'ai un autre probleme tu sera encore la pour m'aider

  9. #9
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    De rien, tant mieux (bis) et on verra bien ^^

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

Discussions similaires

  1. Debutant en php 5
    Par gregal dans le forum Langage
    Réponses: 2
    Dernier message: 10/04/2006, 17h01
  2. [Tableaux] Recherche code php
    Par VFone dans le forum Langage
    Réponses: 7
    Dernier message: 28/03/2006, 16h11
  3. [Tableaux] imprimer en php
    Par ph_anrys dans le forum Langage
    Réponses: 3
    Dernier message: 21/03/2006, 15h40
  4. [Tableaux] comparaison numerique php
    Par kamel_leon dans le forum Langage
    Réponses: 8
    Dernier message: 08/03/2006, 14h35
  5. [Tableaux] tableau en php
    Par fulgaro dans le forum Langage
    Réponses: 1
    Dernier message: 09/02/2006, 16h35

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