Insertion de donnée dans 2 tables
lyn87
Messages postés
80
Statut
Membre
-
kij_82 Messages postés 4260 Statut Contributeur -
kij_82 Messages postés 4260 Statut Contributeur -
Bonjour,
j'ai un probléme avec ce code je veux inseré ces donnée dans ma base de donnée mais il n'y a que les id qui rentre autre chose c'est des champs vide :
voici mon code :
<?php
if(isset($_POST['compteur_boucle'])) $nombre_voyageur=$_POST['compteur_boucle'];
if(isset($_POST['adults'])) $adults=$_POST['adults'];
//************ensuite on lance la boucle pour taiter les infos*********************************************
$i=0;
$civ = isset($_POST['civ'.$i])?mysql_real_escape_string($_POST['civ'.$i]) : null;
$nom = isset($_POST['nom'.$i])?mysql_real_escape_string($_POST['nom'.$i]) : null;
$prenom = isset($_POST['prenom'.$i])?mysql_real_escape_string($_POST['prenom'.$i]) : null;
$email = isset($_POST['email'.$i])?mysql_real_escape_string($_POST['email'.$i]) : null;
$tel = isset($_POST['tel'.$i])? $_POST['tel'.$i] : 0;
$sql="INSERT INTO passager (`id_client1` ,`civ` ,`nom` ,`prenom` ,`email` ,`tel`) ";
$sql.="VALUES (0,'$civ','$nom','$prenom','$email','$tel')";
mysql_query($sql) or die ('Erreur SQL : '.$sql.'<br>'.mysql_error());
//*******************************************************************************************************************
// les compagnons
$id_client1 = mysql_insert_id();
for($i=1;$i<$nombre_voyageur;$i++)
{
$civ = isset($_POST['civ'.$i])?mysql_real_escape_string($_POST['civ'.$i]) : null;
$nom = isset($_POST['nom'.$i])?mysql_real_escape_string($_POST['nom'.$i]) : null;
$prenom = isset($_POST['prenom'.$i])?mysql_real_escape_string($_POST['prenom'.$i]) : null;
if(isset($_POST['an'.$i])) $an_de_naissance =$_POST['an'.$i];else $an_de_naissance="";
$sqle="INSERT INTO compagnon VALUES ";
$sqle.="(0,'$id_client1','$civ','$nom' ,'$prenom',";
if(strlen($an_de_naissance)>0)
$sqle.="'$an_de_naissance')";
else $sqle.="NULL)";
mysql_query($sqle) or die ('Erreur SQL : '.$sqle.'<br>'.mysql_error());
}
?>
j'ai un probléme avec ce code je veux inseré ces donnée dans ma base de donnée mais il n'y a que les id qui rentre autre chose c'est des champs vide :
voici mon code :
<?php
if(isset($_POST['compteur_boucle'])) $nombre_voyageur=$_POST['compteur_boucle'];
if(isset($_POST['adults'])) $adults=$_POST['adults'];
//************ensuite on lance la boucle pour taiter les infos*********************************************
$i=0;
$civ = isset($_POST['civ'.$i])?mysql_real_escape_string($_POST['civ'.$i]) : null;
$nom = isset($_POST['nom'.$i])?mysql_real_escape_string($_POST['nom'.$i]) : null;
$prenom = isset($_POST['prenom'.$i])?mysql_real_escape_string($_POST['prenom'.$i]) : null;
$email = isset($_POST['email'.$i])?mysql_real_escape_string($_POST['email'.$i]) : null;
$tel = isset($_POST['tel'.$i])? $_POST['tel'.$i] : 0;
$sql="INSERT INTO passager (`id_client1` ,`civ` ,`nom` ,`prenom` ,`email` ,`tel`) ";
$sql.="VALUES (0,'$civ','$nom','$prenom','$email','$tel')";
mysql_query($sql) or die ('Erreur SQL : '.$sql.'<br>'.mysql_error());
//*******************************************************************************************************************
// les compagnons
$id_client1 = mysql_insert_id();
for($i=1;$i<$nombre_voyageur;$i++)
{
$civ = isset($_POST['civ'.$i])?mysql_real_escape_string($_POST['civ'.$i]) : null;
$nom = isset($_POST['nom'.$i])?mysql_real_escape_string($_POST['nom'.$i]) : null;
$prenom = isset($_POST['prenom'.$i])?mysql_real_escape_string($_POST['prenom'.$i]) : null;
if(isset($_POST['an'.$i])) $an_de_naissance =$_POST['an'.$i];else $an_de_naissance="";
$sqle="INSERT INTO compagnon VALUES ";
$sqle.="(0,'$id_client1','$civ','$nom' ,'$prenom',";
if(strlen($an_de_naissance)>0)
$sqle.="'$an_de_naissance')";
else $sqle.="NULL)";
mysql_query($sqle) or die ('Erreur SQL : '.$sqle.'<br>'.mysql_error());
}
?>
A voir également:
- Insertion de donnée dans 2 tables
- Supercopier 2 - Télécharger - Gestion de fichiers
- Insertion table des matières word - Guide
- Insertion liste déroulante excel - Guide
- 2 ecran pc - Guide
- Word numéro de page 1/2 - Guide
1 réponse
Bonjour,
Pour résoudre ton problème, je te conseille de mettre des traces (echo "blabla", etc.) un peu partout après chaque ligne de code pour voir où passe ton programme.
Tu peux aussi afficher les valeurs des variables que tu soupçonnes ne pas être correctement remplie (civ, nom, prenom, etc.), voir si tes tests sont correct, ou s'il s'agit d'autre chose.
Ainsi tu devrais vite cerner l'endroit qui coince, et le résoudre par toi même.
Pour résoudre ton problème, je te conseille de mettre des traces (echo "blabla", etc.) un peu partout après chaque ligne de code pour voir où passe ton programme.
Tu peux aussi afficher les valeurs des variables que tu soupçonnes ne pas être correctement remplie (civ, nom, prenom, etc.), voir si tes tests sont correct, ou s'il s'agit d'autre chose.
Ainsi tu devrais vite cerner l'endroit qui coince, et le résoudre par toi même.