voila bien sur j'ai un proble, je séléctionne des données sur des tables, je fait une boucle while pour avoir mes résultats et je veux inserer ces données dans une autre table, il y aura donc plusieurs ligne à inserer.
logiquement il faut que mon insert soit dans le while sinon il ne m'insere que la derniere ligne,mais j'ai une erreur du type: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\librairie\mes_fonctions.php on line 408.
si je met mon insert en dehors avec un i++ il m'insere autant de fois qu'il y a de résultat mais toujours le dernier de la lecture.
voila les 2 codes:
Code : Tout sélectionner
function confirm_commande (){
$sid=$_POST['sid'];
$montant=$_POST['montant'];
$client=$_POST['client_id'];
$strSQL="SELECT f.*,r.prd_id,r.prix_ttc,r.auteur,r.titre FROM panier as f , produit as r WHERE f.sid ='$sid' AND f.prd_id = r.prd_id ";
$resultat= requete_SQL($strSQL);
while ($row=mysql_fetch_array($resultat)){
$sid=$row['sid'];
$prd_id=$row['prd_id'];
$quantite=$row['quantite'];
$prix_ttc=$row['prix_ttc'];
$auteur=$row['auteur'];
$titre=$row['titre'];
$date=$row['date'];
$strSQL="INSERT INTO detail_commande (sid,prd_id,client_id,titre,auteur,quantite,prix_ttc,date) values('$sid','$prd_id','$client','$titre','$auteur','$quantite','$prix_ttc','$date')";
$resultat=requete_SQL($strSQL);
}
}
Code : Tout sélectionner
function confirm_commande (){
$sid=$_POST['sid'];
$montant=$_POST['montant'];
$client=$_POST['client_id'];
$i=0;
$strSQL="SELECT f.*,r.prd_id,r.prix_ttc,r.auteur,r.titre FROM panier as f , produit as r WHERE f.sid ='$sid' AND f.prd_id = r.prd_id ";
$resultat= requete_SQL($strSQL);
while ($row=mysql_fetch_array($resultat)){
$sid=$row['sid'];
$prd_id=$row['prd_id'];
$quantite=$row['quantite'];
$prix_ttc=$row['prix_ttc'];
$auteur=$row['auteur'];
$titre=$row['titre'];
$date=$row['date'];
}
$nbre_ligne=mysql_num_rows($resultat);
for($i=0;$i<$nbre_ligne;$i++){
$strSQL="INSERT INTO detail_commande (sid,prd_id,client_id,titre,auteur,quantite,prix_ttc,date) values('$sid','$prd_id','$client','$titre','$auteur','$quantite','$prix_ttc','$date')";
$resultat=requete_SQL($strSQL);
}
}