Votre question

[PHP] INSERT sur plusieurs table via un formulaire comment faire ?

Tags :
  • MySQL
  • Programmation
Dernière réponse : dans Programmation
12 Mars 2007 00:47:12

bonjour tout le monde, voila j'ai une petite question j'ai un formulaire avec plusieur champs et j'aimerai que les infos entré dans ce formulaire aille directement dans les tables respectives comment faire je vous montre mon script la maniere dont j'ai cru comprendre je vous signale qu'il ne marche pas donc si vous pouvez m'aider et dite moi comment dois je procedé si vous pouvez me corriger se serai trop bien :(  merci

  1. <?php
  2. //connection au serveur
  3. $cnx = mysql_connect( "localhost", "root", "" ) ;
  4.  
  5. //sélection de la base de données:
  6. $db = mysql_select_db( "projet 2006-2007test" ) ;
  7.  
  8. //récupération des valeurs des champs:
  9. //nom:
  10. $Nom_Etudiant = $_POST["Nom_Etudiant"] ;
  11. //Prénom_Etudiant:
  12. $Prénom_Etudiant = $_POST["Prénom_Etudiant"] ;
  13. //Titre:
  14. $Titre = $_POST["Titre"] ;
  15. //Résumé:
  16. $Résumé = $_POST["Résumé"] ;
  17. //Niveau:
  18. $Niveau = $_POST["Niveau"] ;
  19. //Type:
  20. $Type = $_POST["Type"] ;
  21. //Année_Scolaire:
  22. $Année_Scolaire = $_POST["Année_Scolaire"] ;
  23. //Code:
  24. $Code = $_POST["Code"] ;
  25. //Nom_Entreprise:
  26. $Nom_Entreprise = $_POST["Nom_Entreprise"] ;
  27. //Secteur:
  28. $Secteur = $_POST["Secteur"] ;
  29. //Adresse:
  30. $Adresse = $_POST["Adresse"] ;
  31. //Ville:
  32. $Ville = $_POST["Ville"] ;
  33. //Code postal:
  34. $CP = $_POST["CP"] ;
  35.  
  36. //création de la requête SQL:
  37. $sql = "INSERT INTO etudiant(Nom_Etudiant,Prénom_Etudiant)
  38. VALUES ( '$Nom_Etudiant','$Prénom_Etudiant')"
  39.  
  40. $sql = "INSERT INTO document(Titre,Résumé,Niveau,Type,Année_Scolaire,Code)
  41. VALUES ( '$Titre','$Résumé','$Niveau','$Type','$Année_Scolaire','$Code')"
  42.  
  43. $sql = "INSERT INTO entreprise(Nom_Entreprise)
  44. VALUES ( '$Nom_Entreprise') "
  45.  
  46. $sql = "INSERT INTO secteur(Secteur)
  47. VALUES ( '$Secteur')" ;
  48.  
  49. $sql = "INSERT INTO adresse(Adresse,Ville,CP)
  50. VALUES ( '$Adresse'$Ville','$CP') " ;
  51.  
  52.  
  53. //exécution de la requête SQL:
  54. $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
  55.  
  56. //affichage des résultats, pour savoir si l'insertion a marchée:
  57. if($requete)
  58. {
  59. echo("L'insertion a été correctement effectuée") ;
  60. }
  61. else
  62. {
  63. echo("L'insertion à échouée") ;
  64. }
  65. ?>

Autres pages sur : php insert plusieurs table via formulaire

12 Mars 2007 01:04:51

à chaque fois tu écrases la variables $sql, donc à la fin, tu n'exécutes que la dernière requete.
correction rapide mais pas la meilleure: rajoutes un ; à la fin de chaque requete, et utilise $sql .= sauf pour la premiere requete, ca devrait marcher
12 Mars 2007 10:03:35

lol j'ai pas bien compris si tu peux l'illustrer en prenant exemple sur mon programme je pense que je vais bien comprendre merci pour ton aide coca25
Contenus similaires
12 Mars 2007 10:22:51

ah ça marche :bounce:  :bounce:  :bounce:  :bounce:  maintenant en faite je ne sais pas si c'est bien ce que tu voulais me dire mais j'ai essayé un truc ça marche maintenant voila la syntaxe
  1. <?php
  2. //connection au serveur
  3. $cnx = mysql_connect( "localhost", "root", "" ) ;
  4.  
  5. //sélection de la base de données:
  6. $db = mysql_select_db( "projet 2006-2007test" ) ;
  7.  
  8. //récupération des valeurs des champs:
  9. //nom:
  10. $Nom_Etudiant = $_POST["Nom_Etudiant"] ;
  11. //Prénom_Etudiant:
  12. $Prénom_Etudiant = $_POST["Prénom_Etudiant"] ;
  13. //Titre:
  14. $Titre = $_POST["Titre"] ;
  15. //Résumé:
  16. $Résumé = $_POST["Résumé"] ;
  17. //Niveau:
  18. $Niveau = $_POST["Niveau"] ;
  19. //Type:
  20. $Type = $_POST["Type"] ;
  21. //Année_Scolaire:
  22. $Année_Scolaire = $_POST["Année_Scolaire"] ;
  23. //Code:
  24. $Code = $_POST["Code"] ;
  25. //Nom_Entreprise:
  26. $Nom_Entreprise = $_POST["Nom_Entreprise"] ;
  27. //Secteur:
  28. $Secteur = $_POST["Secteur"] ;
  29. //Adresse:
  30. $Adresse = $_POST["Adresse"] ;
  31. //Ville:
  32. $Ville = $_POST["Ville"] ;
  33. //Code postal:
  34. $CP = $_POST["CP"] ;
  35.  
  36. //création de la requête SQL:
  37. $sql1 = "INSERT INTO etudiant(Nom_Etudiant,Prénom_Etudiant)
  38. VALUES ( '$Nom_Etudiant','$Prénom_Etudiant')"
  39.  
  40. $sql2 = "INSERT INTO document(Titre,Résumé,Niveau,Type,Année_Scolaire,Code)
  41. VALUES ( '$Titre','$Résumé','$Niveau','$Type','$Année_Scolaire','$Code')"
  42.  
  43. $sql3 = "INSERT INTO entreprise(Nom_Entreprise)
  44. VALUES ( '$Nom_Entreprise') "
  45.  
  46. $sql4 = "INSERT INTO secteur(Secteur)
  47. VALUES ( '$Secteur')" ;
  48.  
  49. $sql5 = "INSERT INTO adresse(Adresse,Ville,CP)
  50. VALUES ( '$Adresse','$Ville','$CP') " ;
  51.  
  52.  
  53. //exécution de la requête SQL:
  54. $requete = mysql_query($sql1, $cnx) or die( mysql_error() ) ;
  55. $requete = mysql_query($sql2, $cnx) or die( mysql_error() ) ;
  56. $requete = mysql_query($sql3, $cnx) or die( mysql_error() ) ;
  57. $requete = mysql_query($sql4, $cnx) or die( mysql_error() ) ;
  58. $requete = mysql_query($sql5, $cnx) or die( mysql_error() ) ;
  59.  
  60.  
  61. //affichage des résultats, pour savoir si l'insertion a marchée:
  62. if($requete)
  63. {
  64. echo("L'insertion a été correctement effectuée") ;
  65. }
  66. else
  67. {
  68. echo("L'insertion à échouée") ;
  69. }
  70. ?>

j'espere que les gens qui étaient dans mon cas trouveront leur bonheur sur ce post :wahoo:  :hello: 
12 Mars 2007 10:30:38

c'est pas ce que j'ai dis mais c'est meilleur comme ca, en cas d'erreur, tu auras la ligne exact de l'erreur :) 
12 Mars 2007 20:48:31

yes yes coca25 merci je te tiens au courant je mettrai d'autre code comme la suppression et la modification
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS