envoyer des données d'un select

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour, j'ai un problème et j'espère que vous pourrez m'aider. http://www.hostingpics.net/viewer.php?id=385253Capture.png

Je souhaite que, lorsque je clique sur le panier, envoyer le nom du produit, le prix du produit et la quantité du produit voulu à une autre page php pour traiter ces données. Je parviens à envoyer le nom et le prix mais je ne vois pas comment envoyer la quantité voulu.

 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
 while($donnees = mysqli_fetch_assoc($requeteaffiche))
    {
        $image = '../img/'.htmlentities($donnees['nom_produit']).'.jpg';
        $ID_produit=htmlentities($donnees['ID_produit']);
        $nom_produit=htmlentities($donnees['nom_produit']);


        echo   "<tr>
                    <td><a><img src=\"$image\" alt=\"$nom_produit\" title=\"$nom_produit\" height=\"62\" width=\"78\"/></a></td>
                    <td>".htmlentities($donnees['nom_produit'])."</td>
                    <td>".htmlentities($donnees['prix_produit'])."</td>
                    <td>".htmlentities($donnees['quantite_produit_stock'])."</td>
                    <td>".htmlentities($donnees['categorie_produit'])."</td>
                    <td>".htmlentities($donnees['description_produit'])."</td> 
                    <td><select name=\"quantite_choisi\">
                    <option value=1 selected>1</option>
                    <option value=2>2</option>
                    <option value=3>3</option>
                    <option value=4>4</option>
                    <option value=5>5</option>
                    <option value=6>6</option>
                    <option value=7>7</option>
                    <option value=8>8</option>
                    <option value=9>9</option>
                    </select></td>           
                    <td><a href='ajouterpanier.php?ID_produit=$ID_produit&nom_produit=$nom_produit&quantite='quantite_choisi' title='panier'><img src='../img/panier.png' alt='panier' title='panier'/></a></td>
                </tr>";  
    }   
        echo "</table>";

L'envoi s'effectue au niveau du href='ajouterpanier.php?ID_produit=$ID_produit&nom_produit=$nom_produit&quantite='quantite_choisi'

Si quelqu'un pouvait me venir en aide, je lui en serai reconnaissant :)

Édité par Coyote

+0 -0
Auteur du sujet

C'est ce que j'avais fais avant, mais ça n'envoyer rien. Et surtout je vois pas comment envoyer $nom_produit et $prix_produit par formulaire.

 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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
echo '<form action="ajouterpanier.php" method="get">';

        echo    "<table>
                <tr bgcolor=gold>
                    <td>Image</td>
                    <td>Nom</td>
                    <td>Prix (kilos)</td>
                    <td>quantité en stock</td>
                    <td>catégorie</td>
                    <td>description</td>
                    <td>quantité</td>
                    <td>achat</td>
                    <td>note</td>
                </tr>";
 while($donnees = mysqli_fetch_assoc($requeteaffiche))
    {
        $image = '../img/'.htmlentities($donnees['nom_produit']).'.jpg';
        $ID_produit=htmlentities($donnees['ID_produit']);
        $nom_produit=htmlentities($donnees['nom_produit']);


        echo   "<tr>
                    <td><a><img src=\"$image\" alt=\"$nom_produit\" title=\"$nom_produit\" height=\"100\" width=\"120\"/></a></td>
                    <td>".htmlentities($donnees['nom_produit'])."</td>
                    <td>".htmlentities($donnees['prix_produit'])."</td>
                    <td>".htmlentities($donnees['quantite_produit_stock'])."</td>
                    <td>".htmlentities($donnees['categorie_produit'])."</td>
                    <td>".htmlentities($donnees['description_produit'])."</td> 
                    <td><select name='quantite_choisi'>
                    <option value=1 selected>1</option>
                    <option value=2>2</option>
                    <option value=3>3</option>
                    <option value=4>4</option>
                    <option value=5>5</option>
                    <option value=6>6</option>
                    <option value=7>7</option>
                    <option value=8>8</option>
                    <option value=9>9</option>
                    </select></td>           
                    <td><input type='image' src='../img/panier.png' alt='Submit'></td>
                    <td><div class='rating'>
                    <a href='#5' title='Donner 5 étoiles'>☆</a>
                    <a href='#4' title='Donner 4 étoiles'>☆</a> 
                    <a href='#3' title='Donner 3 étoiles'>☆</a>
                    <a href='#2' title='Donner 2 étoiles'>☆</a> 
                    <a href='#1' title='Donner 1 étoile'>☆</a>  
                    </div></td>
                </tr>";  
    }   
        echo "</table>
        </form>";

Peut être que mes balises sont mal placés.

+0 -0
Staff

Et si tu envoyais l'ID du produit directement, plutôt que de vouloir envoyer un tas de données inutiles ?

Tu peux utiliser le bouton d'envoi du formulaire pour ça, ou créer un formulaire pour chaque ligne…

Au passage, nettoyer et moderniser un minimum ton HTML ne ferait pas de mal pour s'y retrouver (tu utilises des trucs dépréciés depuis 15 ans, faut se mettre à jour des fois).

Édité par viki53

Comment veux-tu récupérer dynamiquement dans ta balise <a> la valeur de ton <select>? En gros là tu voudrais que chaque ligne de ton tableau soit un formulaire. Et sur ta page qui traite les données envoyées par ce formulaire, tu récupère $_GET['quantite_choisi'] ou $_POST['quantite_choisi'] en fonction de la méthode que tu veux utiliser.

Sans vouloir être désagréable, on dirait qu'il y a des concepts de base que tu n'as pas assimilé. Essaye de revenir au traitement de formulaire tout simple en PHP. Fais un faux formulaire avec un peu tous les types de input qui existent, et une page où tu affiche via un var_dump le contenu des variables $_GET et $_POST. Tu comprendra rapidement ce que tu dois faire pour le soucis que tu as actuellement je pense.

Bon courage.

Édité par drazik

+0 -0

Comme l'as dis darzik tu n'a pas vraiment besoin d'une requête MYSQL mais plutot $_GET[] ou $_POST[] car tu utilise un formulaire

Une autre technique : tu peux toujours utiliser des session ou des cookies :)

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte