FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » Passer une donnée d'une table MYSQL à une autre
 

Passer une donnée d'une table MYSQL à une autre

Il y a 38 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici



Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : Passer une donnée d'une table MYSQL à une autre
 
Plus d'informations

Bonjour,

Suite à l'affichage partiel d'un enregistrement d'une table A, je voudrais récupérer l'id de cet enregistrement pour faire un lien sur un enregistrement d'une autre table.

Mais là, j'y arrive pas, et je demande votre aide.


1) J’affiche un résultat, suite à une sélection via un menu, de la table A. Ce résultat se compose des champs date_reco, famille et msg_reco. Chaque résultat possible de la table est composé d’un champ id_reco qui lui est propre. Et je le récupère ici .....

Code :
  1. <?php
  2. // information pour la connection à le DB 
  3. ............................
  4. $id_reco = $_GET['id_reco'];
  5. echo "$id_reco";
  6. // connection à la DB 
  7. $link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
  8. mysql_select_db($db) or die ('Erreur :'.mysql_error());
  9. //sélection de l'enregistrement 
  10. $select = "SELECT * FROM reconstitutions where id_reco='$id_reco'";
  11. $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
  12. {
  13. //affichage des résultats dans un tableau 
  14. while($row = mysql_fetch_array($result)) {
  15. echo '<table bgcolor="#FFFFFF" width="900">';
  16. echo '<td bgcolor="#669999" width="100"><center>'.$row['date_reco'].'</center></td>';
  17. echo '<td bgcolor="#669999" width="700"><center>Famille :    <b>'.strtoupper($row['famille']).'</b></center>­</td></tr>';
  18. echo '<tr><td colspan=2 bgcolor="#CCCCCC" width="800">'.nl2br($row['msg_reco']).'</td></tr>';
  19. echo '</table><p>';
  20. }
  21. }
  22. // on libère le résultat 
  23. mysql_free_result($result);
  24. mysql_close(); // on ferme la connexion 
  25. ?>



2) Un lien sur la page résultat me mène à saisir un commentaire html sur ce résultat (là, je perd l'id_reco, et je ne sais pas comment faire pour le garder et le passer au script suivant qui est add.php

Code :
  1. <form method="POST" action="add.php" value="envoyer" name="soumettre">
  2. Commentaire : <textarea cols="65" name="message" id="Message" rows="8" wrap="VIRTUAL" accesskey="c" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onchange="storeCaret(this);"></textarea><p>
  3. <input type="submit" name="preview" value="Valider"></form></div>
  4. </body></html>



3) Ce commentaire va alimenter la table B (add.php). Chaque enregistrement de cette table B est composé d’un champs "id_reco_com" qui doit être = au champ id_reco de la table A. Il peut y avoir plusieurs champs "id_reco_com" avec la même valeur, si plusieurs enregistrements de la table B font référence au même enregistrement de la table A. Et je ne sais pas comment retrouver mon id_reco de la table A pour le copier ds la table B !!!

Code :
  1. <?php
  2. // information pour la connection à le DB 
  3. ............................
  4. {
  5. // récupération des données du formulaires 
  6. $nom = $_POST['nom'];
  7. $mail = $_POST['mail'];
  8. $message = $_POST['message'];
  9. $id_reco = $_GET['id_reco'];
  10. //enregistrement dans la table 
  11. $jour=date("d" );
  12. $mois=date("m" );
  13. $annee=date("Y" );
  14. $date = "$jour/$mois/$annee";
  15. // on écrit la requête sql 
  16. $sql = "INSERT INTO com_reconstitution(commentaire, date_com, nom_com, email_com, id_reco_com) VALUES('$chaine', '$date', '$nom', '$mail', '$id_reco')";
  17. // on insère les informations du formulaire dans la table 
  18. mysql_query($sql) or die('Erreur SQL !'.$sql.mysql_error());
  19. mysql_close(); // on ferme la connexion 
  20. }
  21. header("Location: menu.php" );
  22. exit;
  23. ?>



Ca peut paraître un peu flou !!! Alors, pour récapituler :

Au point 1, j'affiche le résultat d'une requête, et je peux récupérer tous les champs de l'enregistrement "a" de la table A.
Au point 2, j'affiche une page html où je saisi un commentaire dans la table B concernant l'enregistrement "a".
Au point 3, j'écris l'enregistrement dans la table B. Cet enregistrement comporte un champs id_reco_com qui est égal au champs id_reco de la table A.
Et c'est ce champs id_reco que je n'arrive pas à passer de script en script pour l'incrire dans la table B .....

Merci d'avance pour votre aide .....

Plus d'informations

Euuh je sais pas si j'ai bien compris.

Mais tu peux essayé de mettre ta variable id_reco dans un champs caché.


Un truc de ce genre :

Code :
  1. <input type="hidden" name="id_reco" id="id_reco" value="<?php echo $_GET['id_reco'];?>



et tu recuperes ta valeurs comme ceci :

Code :
  1. $_POST['id_reco'];



Je sais pas si j'ai repondu à ta question.J'ai lu entre les lignes

G.M.G.V.S.O.
Profil : Modo matériel
Plus d'informations

Vouais ou passer par les variables de session ...


---------------
SPAM & WAREZ = Ban!
Ultimate Boot CD | Memtest+
Bijoux Fantaisie de Créateur !
Plus d'informations

boub popsyteam a écrit :

Vouais ou passer par les variables de session ...



Oui, mais comme j'avais vu qu'il avait deja une form.J'ai proposé en post.

Mais +1 aussi :)

Plus d'informations

Merci sisier, c'est ok !!!!! :D

A +


  FORUM Tom's Hardware » Programmation » PHP & MySQL & ASP » Passer une donnée d'une table MYSQL à une autre

Aller à :
 

Annonces Google
Publicité
Offres partenaires
Actualités relatives

Mises à jour payante pour MySQL

Publié le 18 July 2006

Alors que la version 5.0 de SGBD vient de sortir MySQL annonce ne plus vouloir proposer des mises à jour gratuites pour les versions antérieures, dès le début du mois d’août, ce qui se comprend puisqu’il lui est préférable de concentrer ses forces sur le Lire la suite

MySql aura son forum français

Publié le 06 September 2005

MySQL France vient de lancer un forum spécialement dédié aux développeurs de la communauté Open Source francophone se servant de MySQL. Ce forum, mis en place sur le portail iFRANCE.com, a été d&eacu Lire la suite

MySQL passe en version 4, notre forum suit

Publié le 19 March 2003

MySQL, le célèbre système de base de données, vient tout juste de passer en version 4.0.12 finale, marquant ainsi le pas du 3.x vers le 4.x. Les nouveautés sont très nombreuses mais pour résumer, on peut remarquer : Amélioration du support de l'Inn Lire la suite

HP vous aide à utiliser MySQL

Publié le 27 April 2006

MySQL vient de se trouver un nouveau partenaire en la personne de HP qui devrait proposer, dès juin, des abonnements MySQL Network et devrait même offrir à ses clients un support technique incluant conseil et solutions pour l’int Lire la suite

Les derniers tests

Que choisir ? Home Cinema 5.1 ou projecteur de son ?

Publié le 25 September 2008

Faut-il craquer pour un ensemble 5.1 ou pour une barre de son ? Découvrez les forces et faiblesses comparées de chaque système. Lire la suite

Intel Core i7 (Nehalem) : une architecture signée AMD ?

Publié le 25 September 2008

Avec ses nouveaux processeurs Core i7, Intel fait évoluer les Core 2 en reprenant leur architecture, mais en lui rajoutant des technologies dont la plupart semblent avoir leur équivalent direct chez AMD. Impression ou réalité ? Lire la suite

Test du Nokia N96 : la vie sans écran tactile

Publié le 24 September 2008

Un téléphone haut de gamme peut il échapper à l'écran tactile ? Nokia a tenté le pari avec le N96. Lire la suite

Les nouveaux disques durs 1 To

Publié le 22 September 2008

Un an et demi après l'introduction du premier disque dur 1 To, les prix ont beaucoup diminué et de nouveaux modèles ont été lancés. Mais comment se comportent-ils entre eux et par rapport aux anciens ? Réponse dans ce comparatif. Lire la suite