Parcourir un tableau

Discussion dans 'Web, design' créé par derkomai, 20 Avril 2004.

Statut de la discussion:
Fermée.
  1. Offline
    derkomai ex membre
    Voilà, j'ai un ti problème. Je dois parcourir un tableau pour pouvoir mettre son contenu dans une table. Mais j''y arrive pas trop. Si vous avez une idée elle est la bien venue. :wink:
    En fait j'utilise 2 tables, un table commande qui contient un user_id ou soc_id, le total etc... et une table lgcommande qui contient les produit qui se trouve dans la commande.
    Quand il y a plusieur porduit dans ma commande il n'ajoute que le premier et pas les autres dans la table lgcommande.

    Voici mon code :

    <?php
    session_start();
    $serial = $_GET["serial"];
    function redirection($url)
    {
    if (headers_sent())
    {
    print('<meta http-equiv="refresh" content="0;URL='.$url.'">');
    }
    else
    {
    header("Location: $url");
    }
    }

    require ('config.php');

    if (!isset($_SESSION["achats"]))
    {
    // validation et pas d'achats
    redirection("../erreur.htm");
    }

    $achats = $_SESSION["achats"];

    if (($HTTP_SESSION_VARS["permiss"]==2) || ($HTTP_SESSION_VARS["permiss"]==1)){
    $user_id = $_SESSION["user_id"];
    $sql="INSERT into commandes VALUES('','$user_id','','','')";
    $result=mysql_query($sql);
    }
    else{
    $soc_id = $_SESSION["soc_id"];
    $sql="INSERT into commandes VALUES('','','$soc_id','','')";
    $result=mysql_query($sql);
    }
    ;

    $id_cde = mysql_insert_id();


    $query="INSERT into lgcommandes VALUES('','$id_cde','$achats[1]','$achats[2]','$achats[3]')";

    $result=mysql_query($query);

    header('location: ../../index.php?page=cent');
    ?>

    Merci encore pour l'aide que vous serez m'apporter
    derkomai, 20 Avril 2004
    #1
  2. Offline
    AcidBird Touriste
    Je connais pas le Php dpnc je saurais pas t'aider des masses mais je ne vois pas de boulces pour l'ajout de tes commandes.


    Tu devrais un truc du style

    AjouterUneCommande;
    Pour i = 0 à NombreDeProduitCommandé faire
    AjouterUnProduitàLaCommande;
    FinFaire

    En gros, Tu ajoutes ta nouvelle commande dans la function AjouterUneCommande (donc ajout d'un ligne ds ta tble commande), ensuite tu dois faire une boucle x fois (x étant le nombre de produits commandés) qui appellera à chaque fois la function AjouterUnProduitàLaCommande qui ajoute une ligne ds ta table lgcommande.
    AcidBird, 20 Avril 2004
    #2
  3. Offline
    derkomai ex membre
    Merci, j'essaie de faire la boucle mais ça marche pas top. A mon avis je fais une erreur quelque part mais ou je le vois pas. Comme d'hab quand je suis collé à mon code.
    Si quelqu'un peu m'aider ça serait cool.

    :wink:
    derkomai, 20 Avril 2004
    #3
  4. Offline
    Code:
    $query="INSERT into lgcommandes VALUES('','$id_cde','$achats[1]','$achats[2]','$achats[3]')"; 
    
    Si je lis bien ton code, tu fais ici un insert de tes 3 éléments dans ta tables.. Attention, pas trois éléments séparés, mais bien un seul récord avec 3 éléments....

    Syntaxiquement, je ne vois pas de faute... si problème il y a, il doit venir de ta déclaration de la variable dans la page précédente.
    TheFornicator, 23 Avril 2004
    #4
Statut de la discussion:
Fermée.