Je suis nouveau ici et j'ai un petit soucis !
J'ai une page index où j'ai une liste déroulante. Et j'aimerais que quand l'utilisateur choisit 1,2 ou 3 dans la liste déroulante, qu'il change dans la base de donnée et s'affiche dans le header .
INDEX.PHP
Code : Tout sélectionner
<?php
// Header
include_once "header.php";
// La requête pour récupérer : titre,decription,image
$requete = $db->prepare('SELECT * FROM products');
$requete->execute();
$quantities = $requete->fetchAll();
?><div id="main">
<?php foreach($quantities as $quantitie){ ?>
<h2><?= htmlentities(strtoupper($quantitie['title']))?></h2>
<img src="img/<?= $quantitie['pictures']?>" alt="tennis_logo"/>
<p>
<?= htmlentities($quantitie['description'])?>
</p>
<?php } ?>
<div id="form">
<form action="panier.php" method="POST">
<label for="quantity">Quantité :</label>
<select id="quantity" name="quantity">
<?php
for($i = 1; $i <= 3; $i++){
?>
<option value="<?= $i ?>"><?= $i ?></option>
<?php } ?>
<input type="submit" value="Ajouter au panier" name="send"/>
</select>
</form>
</div>
</div>
<!--Footer-->
<?php include_once "footer.php";?>
Code : Tout sélectionner
<?php
//Inclusion de la dbb
require_once 'inc/db.php';
//La requête pour aller chercher la quantité d'articles dans le panier.
$id = !empty($_GET['id']) ? intval($_GET['id']) : 1;
$requete = $db->prepare('SELECT id,items_quantity FROM products WHERE id = :id');
$requete->bindValue(':id',$id,PDO::PARAM_INT);
$requete->execute();
$nbre_items = $requete->fetch();
?><!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>wootbox : vos achats en toutes confiance</title>
<meta charset="utf-8" />
<link rel="stylesheet" href="css/style.css"/>
</head>
<body>
<div id="container">
<div id="header">
<h1>WootBox</h1>
<nav id="rezo">
<ul id="rsx">
<span>Suivez-nous :</span>
<a href="#facebook"><img src="img/facebook_logo.png" alt="logo_facebook"/></a>
<a href="#tweet"><img src="img/twiter_logo.png" alt="logo_twiter"/></a>
<a href="#pinterest"><img src="img/pinterest_logo.png" alt="logo_pinterest"/></a>
<a href="#google+"><img src="img/google_plus.png" alt="logo_google+"/></a>
<a href="#instagram"><img src="img/instagram_logo.png" alt="logo_instagram"/></a>
</ul>
<ul id="compte">
<a href="moncompte.php">Mon compte</a>
<img src="img/icone_panier.jpg" alt="logo_panier"/>
<a href="panier.php?id=<?= intval($nbre_items['id'])?>">Panier</a>
<span><?= intval($nbre_items['items_quantity'])?></span>
</ul>
</nav>
<ul id="suivi">
<li><a href="#" id="go_on">S'abonner</a></li>
<li><a href="#">L'offrir</a></li>
<li><a href="#">Les box</a></li>
<li><a href="#">Les recettes</a></li>
<li><a href="#">Le magazine</a></li>
<li><a href="#">Soldes</a></li>
</ul>
</div>Code : Tout sélectionner
<?php
//HEADER
include_once "header.php";
//Définit les variables
$id = !empty($_GET['id']) ? intval($_GET['id']) : 1;
$items_quantity = !empty($_POST['items_quantity']) ? intval($_POST['items_quantity']) : 1;
if(!empty($_POST['send'])){
$query = $db->prepare('UPDATE products SET items_quantity = :items_quantity WHERE id = :id');
// Pour chacune des variables précédées d'un : on doit faire un bindValue pour passer la valeur à la requête
$query->bindValue(':items_quantity', $items_quantity, PDO::PARAM_INT);
$query->bindValue('id', $id, PDO::PARAM_STR);
// On execute la requête
$query->execute();
}
?><div id="main">
<nav id="commande">
<hr/>
<ul class="service">
<span>1</span><a href=""class="active">Votre panier</a>
<span>2</span><a href="">Adresse</a>
<span>3</span><a href="">Livraison</a>
<span>4</span><a href="">Paiement</a>
</ul>
</nav>
</div>
<!--Footer-->
<?php include_once "footer.php";?>