insertion multiple (panier) dans bdd

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : insertion multiple (panier) dans bdd

Re: insertion multiple (panier) dans bdd

par ghost5922 » 14 mai 2013, 12:25

Bonjour,

ce sujet semble être résolu je t'invite a créer un nouveau post a explique ce que tu veux avec un bout de ton code

Re: insertion multiple (panier) dans bdd

par sayli » 14 mai 2013, 12:20

bonjour en faite , j'ai le meme probleme et je voudrais inserer les contenus de panier dans une table mais avec les foreach et la fonction explode .

j'y arrive pas , si quelqu'un pourrais m'aider ca serai sympa

Re: insertion multiple (panier) dans bdd

par xTG » 22 févr. 2011, 20:40

Euh...
A voir ton dernier post j'ai un peu peur là. :/
Tu pourrais nous poster ton code ?

Re: insertion multiple (panier) dans bdd

par quiqui » 22 févr. 2011, 19:30

ça y est !!!
ça fonctionne...

La solution :
il faut mettre
<?php $red = mysql_query($sql); ?> dans la boucle foreach

Merci pour votre aide !

Re: insertion multiple (panier) dans bdd

par xTG » 22 févr. 2011, 18:53

$tableau = array(
  'friandises' => array("chocolat", "bonbon"),
  'poissons' => array("merlan", "cabillaud"),
  'viande' => array("vache","porc")
);

foreach($tableau as $type => $valeurs)
{
  echo "Aliments de type : $type<br />";
  echo "<ul>";

  foreach($valeurs as $aliment)
  {
    echo "<li>$aliment</li>";
  }

  echo "</ul>";
}
Essayes ceci, tu devrais comprendre. :)

Re: insertion multiple (panier) dans bdd

par quiqui » 22 févr. 2011, 18:46

Salut,

Oui oui, le session_start () est bien dans mon code mais je ne l'ai pas mis dans l'extrait...
Tu me m'aider un peu plus pour la définition du foreach s'il te plaît ? :lol:

Je nage dans le flou avec cette boucle...
Merci d'avance,

Re: insertion multiple (panier) dans bdd

par moogli » 22 févr. 2011, 16:45

salut,

il ne manquerait pas un session_start() dans tous ça ? (a moins que tu n'ai pas mis tous le code ?).

qui plus est il faut que tu revois la définition du foreach car la tienne est erronée foreach ($panier as $nbArticles ; $i++) tu devrais d'ailleurs avoir un message d'erreur ;)


au niveau de la structure du panier seule la ref et la quantité sont utile le reste est dans la db et facilement récupérable (fonction in de mysql)

@+

insertion multiple (panier) dans bdd

par quiqui » 22 févr. 2011, 16:31

Bonjour,

Je viens d'ajouter un panier électronique à mon site pour effectuer des achats.
Je voudrais pouvoir enregistrer dans ma base de données les commandes faites par les clients.

Mon problème est le suivant :
Quand un client réalise plusieurs achats, je n'arrive à enregistrer que la dernière ligne de commande...
J'ai essayé avec une boucle foreach, mais je dois mal m'y prendre car cela ne fonctionne pas...

voici comment j'arrive à récupérer les données de mon panier sur la page récapitulative de commande :

<?php
if (creationPanier())
{
$nbArticles=count($_SESSION['panier']['libelleProduit']);
if ($nbArticles <= 0)
echo "<tr><td>Votre panier est vide </ td></tr>";
else
{
for ($i=0 ;$i < $nbArticles ; $i++)
{
echo "<td>Titre du livre : <strong>".htmlspecialchars($_SESSION['panier']['libelleProduit'][$i])."</strong></td>";
echo "<td><input type=\"text\" size=\"4\" style=\"width:25px\" name=\"q[]\" value=\"".htmlspecialchars($_SESSION['panier']['qteProduit'][$i])."\"/></td>";
echo "<td>".htmlspecialchars($_SESSION['panier']['prixProduit'][$i])."</td>";
}
}
}
?>

Et voici comment je me connecte à ma bdd :

<?php

$_SESSION['panier'] = $panier;

mysql_connect("", "", "");
mysql_select_db("");

mysql_query("SET NAMES UTF8");

if (creationPanier())
{
foreach ($panier as $nbArticles ; $i++)
{
$sql = "INSERT INTO test (login, civilite_livraison, prenom_livraison, nom_livraison, produit, quantite) VALUES ('$login','$civilite_livraison', '$prenom_livraison','$nom_livraison', '".$_SESSION['panier']['libelleProduit'][$i]."','".$_SESSION['panier']['qteProduit'][$i]."')";
}
}

$red = mysql_query($sql);
mysql_close();
?>

Merci d'avance pour votre aide,