IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

stocker des données [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Par défaut stocker des données
    Bonjour;
    Voici mon problème j'utilise une session pour récupérer toutes les données pour les stocker dans une table.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    <?
    session_start();
    include "connexion.php";
    $pannier=$_SESSION['panier'];
    $prix=$_SESSION['prix'];
    $iddproduits=$_POST['contenu'];
    $i=0;
     
    if(!$pannier){
    header("location:index_.php");
    }
    else{
    $no_pr=$_POST['nom_prenom'];
    $tele=$_POST['telephone'];
    $email=$_POST['email'];
     
    $commande=$prix.'&nbsp;&nbsp;';
    echo $commande;
     
    for ($i = 0; $i < count($iddproduits); $i++){
    echo $iddproduits[$i].'&nbsp;&nbsp;';
    }
     
    $sql="insert into t_commande(nom_prenom,telephone,email,commande) values('$no_pr','$tele','$email','$commande')";
    mysql_query($sql);
    header("location:sessionout.php");
    }
    ?>
    le tout marche bien mais dans la base de données je n'arrive pas a inserer les données pour la variable $iddproduits.
    merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Bonjour,

    Ou veux-tu inserer $iddproduits ?

    Au passage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for ($i = 0; $i < count($iddproduits); $i++){
    echo $iddproduits[$i].'&nbsp;&nbsp;';
    }
    ==>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    foreach ( $iddproduits as $value) {
    echo $value.'&nbsp;&nbsp;';
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Par défaut
    peut etre je me suis mal expliqué au depart.
    voila le probleme :
    je fais un site e-commerce, ce que je cherche moi c'est l'insertion des données à la fin. une fois je fais "ajouter au panier" le tout marche, mais pour le stocker tous les produits dans ma base c'est sa le probleme, je peux faire la somme des produits (prix) mais apres je dois inserer dans ma base le nom de la personne puis les elements selectionnés.
    je arrive seulement a inserer le dernier produits selectionné mais pas les autres.
    merci pour la réponse

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    je arrive seulement a inserer le dernier produits selectionné mais pas les autres.
    Pourrais-tu nous montrer ce code ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Par défaut
    le code est déjà inseré au debut :d

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Je ne vois pas l'insertion du produit dedans.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre confirmé Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Par défaut
    Voici le code l'explication est dedans :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    <?
    $pannier=$_SESSION['panier'];
     
    //je recupere la somme des produits
    $prix=$_SESSION['prix'];
     
    //je recupere les produits que j'ai inseré dans une balise textarea
    $iddproduits=$_POST['contenu'];
     
     
    $i=0;
     
    //la recuperation des données du client 'nom, prenom, telephone et email'
    $no_pr=$_POST['nom_prenom'];
    $tele=$_POST['telephone'];
    $email=$_POST['email'];
     
    //je pense que c'est là le probleme, je ne recupere que le dernier produit mais moi je voudrais recuperer tous les produits puis inserer le nom, prenom, telephone, email et la commande(le prix total et les nom des produits) dans ma table "t_commande"
    for ($i=0;$i<count($iddproduits);$i++){
    echo $iddproduits[$i].'&nbsp;&nbsp;';
    }
     
    $sql="insert into t_commande(nom_prenom,telephone,email,commande,total) values('$no_pr','$tele','$email','$iddproduits[$i]','$prix')";
    mysql_query($sql);
    ?>
    merci d'avance

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    ah d'accord ce n'est pas tout a fait le meme code.
    tu n'as par contre pas tenu compte de mon explication sur foreach().

    Puisque tu as plusieurs produits par commande il te faut une table supplementaire qui fasse le lien entre des produits et une commande

    tl_produit_commande
    ---
    id - produit_id - commande_id

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $sql="insert into t_commande(nom_prenom,telephone,email,total) values('$no_pr','$tele','$email','$prix')";
    mysql_query($sql);
     
    $commande_id = mysql_lastinsertid()
     
    foreach ( $iddproduits as $value) {
     $sql = "INSERT INTO tl_produit_commande (produit_id, commande_id) 
    VALUES (" . $value . "," . $commande_id . ")"
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Membre confirmé Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Par défaut
    merci mais moi j'ai deja fais sa.
    je veux pas utiliser 2 tables.
    normalement une fois la commande est faite, le reste c'est juste récupéré le tous et puis le stocker dans une seule ligne dans ma table.

    par exemple
    nom : Mr x
    les produits : p1 p2 p3
    le total est : 150.00$
    peut être que tu m'as pas bien compris.
    mon problème c'est au niveau de l'insertion dans la table.
    regard bien le code.
    Peut être que je dois utiliser une session qui va contenir tous les éléments sélectionnes

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ce n'est pas une bonne facon de faire mais si c'est ce que tu veux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql="insert into t_commande(nom_prenom,telephone,email,commande,total) values('$no_pr','$tele','$email'," . implode(";",$iddproduits) . "','$prix')";
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #11
    Membre confirmé Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Par défaut
    Merci de ton aide, je savais bien que je peux toujours compter sur developpez.net et ses membres.
    et pour la methode de 2 tables je l'ai deja fais, c'est juste moi je cherche une nouvelle methode.
    merci une autre fois "sabotage".

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#]Comment stocker des données ?
    Par T0xF0x dans le forum Windows Forms
    Réponses: 4
    Dernier message: 19/07/2006, 10h18
  2. [VB]stocker des données de pages web dans une base
    Par tofito dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 15/02/2006, 11h02
  3. [MySQL] Stocker des données dans un tableau
    Par LadyArwen dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 02/02/2006, 10h40
  4. Réponses: 2
    Dernier message: 15/06/2005, 17h32
  5. [XML] stocker des données dans un fichier XML
    Par R3iTt0R dans le forum XML/XSL et SOAP
    Réponses: 5
    Dernier message: 27/05/2005, 16h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo