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 :

Problème tableau et récupération de données [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 8
    Points : 10
    Points
    10
    Par défaut Problème tableau et récupération de données
    Bonjour,
    Je vous explique mon problème en faite j'ai un tableau que je charge avec des données que je prend dans ma BDD et sur chaque ligne de ce tableau j'aimerais mettre un lien pour modifier ou supprimer un enregistrement le problème c'est que je ne sais pas comment récupérer la ligne à modifier ou à supprimer

    Voici mon code Désolé il est bien moche mais a vrai dire j'ai pas le temps de faire ça bien

    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
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    <!-- Tableau central contenant les données recherchées-->    
    <div id="tableau">
      <table width="2170" align="center" border="2" bordercolor="#000000" >
      <caption>
      Titre du tableau
      </caption>
      <tr>
        <th width="150" bgcolor="#999999" >Nom de fichier</th>
        <th width="120" bgcolor="#999999" >Date</th>
        <th width="200" bgcolor="#999999" >Secrétaire</th>
        <th width="400" bgcolor="#999999" >Destinataire</th>
        <th width="600" bgcolor="#999999" >Objet</th>
        <th width="200" bgcolor="#999999" >Rédacteur</th>
        <th width="200" bgcolor="#999999" >Signataire</th>
        <th width="100" bgcolor="#999999" >Service</th>
        <th width="100" bgcolor="#999999" >Lien</th>
        <th width="100" bgcolor="#999999" >Modification</th>
        <th width="100" bgcolor="#999999" >Supression</th>
      </tr>
      <!--Début des requêtes-->
            <?php
    		$req1="SELECT * FROM t_enregistrement LIMIT 0,20";
    		$result= $mycnx->query($req1);
     
    		while ($ligne = $result->fetch(PDO::FETCH_OBJ))
    		{
    			$nom=$ligne->enreg_nom_fichier; 
    			$date=$ligne->enreg_date_creation;
    			$dest=$ligne->enreg_destinataire;
    			$objet=$ligne->enreg_objet;
    			$sec=$ligne->enreg_secretaire_id;
    			$red=$ligne->enreg_redacteur_id;
    			$sign=$ligne->enreg_signataire_id;
    			$lien=$ligne->enreg_lien;
    			$ser=$ligne->enreg_bureau_id; 
     
    				$req2="SELECT * FROM t_secretaire WHERE secretaire_id='$sec'";
    				$result1= $mycnx->query($req2);
    					while ($ligne = $result1->fetch(PDO::FETCH_OBJ))
    							{
    								$nomsec=$ligne->secretaire_nom;
    								$presec=$ligne->secretaire_prenom;
     
     
     
    							 $req3="SELECT * FROM t_redacteur WHERE redacteur_id='$red'";
    							 $result2= $mycnx->query($req3);
    								while ($ligne = $result2->fetch(PDO::FETCH_OBJ))
    									{
    										$nomred=$ligne->redacteur_nom;
    										$prered=$ligne->redacteur_prenom;
     
     
     
    										$req4="SELECT * FROM t_signataire WHERE signataire_id='$sign'";
    							 			$result3= $mycnx->query($req4);
    											while ($ligne = $result3->fetch(PDO::FETCH_OBJ))
    												{
    													$nomsign=$ligne->signataire_nom;
    													$presign=$ligne->signataire_prenom;
     echo'<tr>
        <td align="center">'.$nom.'</td>
        <td align="center">'.$date.'</td>
        <td align="center">'.$nomsec.' '.$presec.'</td>
        <td align="center">'.$dest.'</td>
        <td align="center">'.$objet.'</td>
        <td align="center">'.$nomred.' '.$prered.'</td>
        <td align="center">'.$nomsign.' '.$presign.'</td>
        <td align="center">8</td>
        <td align="center">9</td>
        <td align="center"><a href="modif.php" title="Modification de l\'enregistrement"><img src="css/images/modif.png"/></a></td>
        <td align="center"><a href="supr.php" title="Supression de l\'enregistrement"><img src="css/images/supr.png"/></a></td>
      </tr>';}}}}
    $result -> closeCursor();
    $result1-> closeCursor();
    $result2-> closeCursor();
    $result3-> closeCursor();
     
     ?></table>
     </div>
    				<!--Fin du tabelau central-->

  2. #2
    Membre émérite
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Points : 2 724
    Points
    2 724
    Billets dans le blog
    1
    Par défaut
    Si tu as un Id dans toutes tes tables, ça posera pas de souci:

    tu fait un lien vers modif.php?ID1=id1&ID2=id2......

    Comme ça lorsque tu ouvre ta page modif, tu connais de suite les id fesant référence à ton enregistrement

  3. #3
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Aïe 3 boucles while imbriquées avec à chaque niveau une requête SQL ? ça mériterai un peu d'optimisation tout ça

    Tu peux regrouper toutes tes requêtes d'un coup en utilisant les jointures.
    Voir: http://dev.mysql.com/doc/refman/5.0/en/join.html

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 8
    Points : 10
    Points
    10
    Par défaut
    Oui chacun de mes champs dans la tableau à un identifiants unique auto incrementer
    Mais je ne vois pas comment comment faire pour votre solution
    Je ne fais du php depuis lontemps

    Citation Envoyé par Benjamin Delespierre Voir le message
    Aïe 3 boucles while imbriquées avec à chaque niveau une requête SQL ? ça mériterai un peu d'optimisation tout ça

    Tu peux regrouper toutes tes requêtes d'un coup en utilisant les jointures.
    Voir: http://dev.mysql.com/doc/refman/5.0/en/join.html
    Oui je sais que c'est très peu optimisé mais il faut que ce soit fini pour le 5 aout, j'ai commencé la semaine dernière et j'ai reçu le cahier des charges en milieu de semaine dernière...
    Il faut que j'aille le plus vite possible l'optimisation sera fera une autre fois du moement que ça fonctionne
    C'est pour un job d'été en faite que je fais ça

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    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
    <?php
     echo'<tr>
        <td align="center">'.$nom.'</td>
        <td align="center">'.$date.'</td>
        <td align="center">'.$nomsec.' '.$presec.'</td>
        <td align="center">'.$dest.'</td>
        <td align="center">'.$objet.'</td>
        <td align="center">'.$nomred.' '.$prered.'</td>
        <td align="center">'.$nomsign.' '.$presign.'</td>
        <td align="center">8</td>
        <td align="center">9</td>
        <td align="center"><a href="modif.php?ID1='.$id1.'&amp;ID2='.$id2.'" title="Modification de l\'enregistrement"><img src="css/images/modif.png"/></a></td>
        <td align="center"><a href="supr.php?ID1='.$id1.'&amp;ID2='.$id2.'" title="Supression de l\'enregistrement"><img src="css/images/supr.png"/></a></td>
      </tr>';
    ?>
    Puis dans modif.php/supr.php tu récupères les ID par $_GET

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 8
    Points : 10
    Points
    10
    Par défaut
    OK merci je m'en vais tester ça de suite

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 05/08/2011, 13h30
  2. [MySQL] problème avec la récupération de données hashées avec l'algorythme md5 dans ma BD
    Par roy-mustang dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 07/07/2011, 08h21
  3. [Toutes versions] Aide sur tableau excel récupération de donnée
    Par mattdogg97 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 01/02/2011, 09h29
  4. Réponses: 2
    Dernier message: 17/01/2011, 09h01
  5. Réponses: 3
    Dernier message: 02/09/2008, 11h48

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