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 :

formulaire ajt panier [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif Avatar de harlock59
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2005
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 262
    Par défaut formulaire ajt panier
    bonjour à tous,
    j'ai un formulaire qui doit me permettre d'ajouter un element au panier en le stockant dans une base mysql.
    voici mon code html (j'utilise smarty comme moteur de template)
    le code suivant est dans le fichier bacs.tpl (code html),
    et la page bacs.php contient le code source (la partie code php).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <form name="ajt_panier" method="post" action="bacs.php">
    		<td align=center>&nbsp;&nbsp;<input type=text name=qte_a_commander{$tpl_id_bac[id]} size=5>		</td>
    		<td align=center><input type="submit" name=comm_bacc{$tpl_id_bac[id]} value="ajouter au panier">       </td>
    		</form>
    ici bacs.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    session_start();
    $id_bac=$_POST[''];
    $req=&$conn->Execute('insert into panier_bacs values ');
    voici la structure de ma table:
    qte_bac int(5)
    fourniss varchar(25)
    id_bac int(5)
    couleur varchar(25)
    typ_bac varchar(25)
    et la table ref_bacs:
    id int(25) auto_increment
    fournisseur varchar(25)
    typ_de_bac varchar(20)
    nombre int(8)
    couleur varchar(20)

    je voudrais pouvoir insérer suivant la qté saisie au clavier le bac correspondant à l'id.
    si quelqu'un pouvait m'aider?
    merci.

  2. #2
    Membre très actif Avatar de harlock59
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2005
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 262
    Par défaut
    voici mon code php, mais j'obtiens l'erreur suivante:
    requete1You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
    pour toute aide !

    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
    30
    31
    $req=&$conn->Execute('SELECT max(id) FROM `ref_bacs`');
    $count=$req->fields[0];
    echo "count= ".$count;
     
    $ref_id=$_POST['id'];
     
    for ($i=1;$i<=$count;$i++)
    {  	echo "\$i= ".$i;
     
    	$qte=$_POST['qte_a_commander'.$i];
        echo "qte= ".$qte;
    	$recordSet=&$conn->Execute("select * from ref_bacs where id=$ref_id");
    	if (!$recordSet) print "requete1".$conn->ErrorMsg();
    	else
    	{
    	while (!$recordSet->EOF)
    		{
    		$fourniss[]=$recordSet->fields[1];
    		echo "fourniss= ".$recordSet->fields[1];
    		$typ_bac[]=$recordSet->fields[2];
     
    		$nbre[]=$recordSet->fields[3];
    		$coul[]=$recordSet->fields[4];
    		$req=&$conn->Execute("insert into panier_bacs (qte_bac, fourniss, id_bac, couleur, typ_bac) values ($qte,$fourniss,$ref_id,$coul,$typ_bac)");
    		if (!$req) print "requete2".$conn->ErrorMsg();
    		$recordSet->MoveNext();
    		}
     
    	}
     
    }

  3. #3
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Dans le INSERT

    avec des quotes.

    Et si tu insères des valeurs string il faut les entourer aussi par des quotes.

  4. #4
    Membre très actif Avatar de harlock59
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2005
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 262
    Par défaut
    ok, je vais essayer, merci.

  5. #5
    Membre très actif Avatar de harlock59
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2005
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 262
    Par défaut
    maintenant, ca me met:
    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Web\Site\modules\gesstock\bacs.php on line 79

    ligne 79:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $req=&$conn->Execute("insert into panier_bacs (qte_bac, fourniss, id_bac, couleur, typ_bac) values ($qte,$fourniss['id'],$ref_id,$coul['id'],$typ_bac['id'])");
    		if (!$req) print "requete2".$conn->ErrorMsg();

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    req=&$conn->Execute("insert into panier_bacs (qte_bac, fourniss, id_bac, couleur, typ_bac) values ('$qte','$fourniss['id']','$ref_id','$coul['id']','$typ_bac['id']')");

    comme ca plutot me semble mé je peu me tromper

  7. #7
    Membre très actif Avatar de harlock59
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2005
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2005
    Messages : 262
    Par défaut
    j'ai essayé aussi ça:
    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
    30
    31
    32
    33
    $req=&$conn->Execute('SELECT max(id) FROM `ref_bacs`');
    $count=$req->fields[0];
    echo "count=".$count." ";
     
    $ref_id=$_POST['id'];
    echo "ref_id=".$ref_id." ";
    $qte=$_POST['qte_a_commander'.$ref_id];
     
    for ($i=1;$i<=$count;$i++)
    {  	echo "\$i=".$i." ";
     
    	$qte=$_POST['qte_a_commander'.$i];
        echo "qte=".$qte." ";
    	$recordSet=&$conn->Execute("select * from ref_bacs where id=$ref_id");
    	if (!$recordSet) print "requete1".$conn->ErrorMsg();
    	else
    	{
    	while (!$recordSet->EOF)
    		{
    		$fourniss[]=$recordSet->fields[1];
    		echo "fourniss=".$recordSet->fields[1]." ";
    		$typ_bac[]=$recordSet->fields[2];
     
    		$nbre[]=$recordSet->fields[3];
    		$coul[]=$recordSet->fields[4];
    		$req=&$conn->Execute("insert into panier_bacs (qte_bac, fourniss, id_bac, couleur, typ_bac) values ($qte,$fourniss[$ref_id],$ref_id,$coul[$ref_id],$typ_bac[$ref_id])");
    		if (!$req) print "requete2".$conn->ErrorMsg();
    		$recordSet->MoveNext();
    		}
     
    	}
     
    }
    mais ca ne marche pas non plus...

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

Discussions similaires

  1. Envoi formulaire + Panier par Mail
    Par Le Druide 91 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 16/03/2015, 10h49
  2. Ajouter réponse formulaire au panier d'achat
    Par AProd dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 20/10/2012, 10h27
  3. formulaire pour valider un panier
    Par shgeoffrey dans le forum Langage
    Réponses: 3
    Dernier message: 25/09/2008, 22h22
  4. Réponses: 1
    Dernier message: 08/06/2008, 14h55
  5. Formulaire panier en PHP
    Par Shyboy dans le forum Langage
    Réponses: 7
    Dernier message: 08/05/2006, 14h56

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