Page 1 sur 1
Récupérer une somme
Posté : 06 avr. 2017, 13:21
par quattro
Bonjour
j'ai le code :
Code : Tout sélectionner
//effectue la somme total de mon panier
$result=$mysqli->query('SELECT sum(panier_prix) FROM panier');
echo $result;
}
il me met une erreur : Catchable fatal error: Object of class mysqli_result could not be converted to string
Comment faire pour récupérer le total de ma somme ?
Re: Récupérer une somme
Posté : 06 avr. 2017, 13:42
par moogli
bonjour,
oui effectivement.
as tu regardé la doc de
mysqli_result ?
il faut toujours un "fetch" pour avoir une donnée (quelque soit la base ou le driver).
je te conseil de mettre un alias sur ta somme pour l'utiliser plus simplement.
il ne te manquerais pas un prédicat ? tu veux vraiment la somme de toute la table ?
@+
Re: Récupérer une somme
Posté : 06 avr. 2017, 22:09
par quattro
merci
Re: Récupérer une somme
Posté : 06 avr. 2017, 22:12
par quattro
toujours avec mon code, j'ai maintenant un petit pb.
Code : Tout sélectionner
require('../inc_/inc_sessionUser.php');
if (isset($_GET['nom']) AND isset($_GET['prix']))
{
//echo 'Votre panier comporte : ' .$_GET['nom']. ' ' .$_GET['prix']. ' €';
$nom = $_GET['nom'];
$prix = $_GET['prix'];
//requete INSERT INTO
if ($mysqli -> query('INSERT INTO panier (panier_nom,panier_prix) VALUES ("'.$nom.'","'.$prix.'")'))
{
//creation d'un tableau
$result = $mysqli->query('SELECT panier_nom,panier_prix FROM panier');
while ($row = $result -> fetch_array()):
$panier [$row['panier_nom']] = $row['panier_prix'];
endwhile;
{
//effectue la somme total de mon panier
$result = $mysqli->query('SELECT sum(panier_prix) as totalPanier FROM panier');
$row = $result -> fetch_array();
$total = $row['totalPanier'];
}
}
}
?>
<div>
<h1>Mon Panier</h1>
<ul><?php foreach ($panier as $cle => $val): ?>
<li><?php echo $cle. ' - ' .$val. '€'; ?></li><!--affiche mon panier-->
</ul>
<?php endforeach ?>
<h1>Somme du panier = <?php echo $total?> </h1>
</div>
<br><a href="../page/produits.php">Retour vers les Produits.</a>;
lorsque je rafraîchi sur Mozilla, cela m’incrémente la somme avec le dernier choix de mon produit ?
Re: Récupérer une somme
Posté : 06 avr. 2017, 23:35
par kevin254kl
Bonjour,
Quand tu rafraîchis quels sont les paramètres dans ton url?
Re: Récupérer une somme
Posté : 07 avr. 2017, 07:46
par quattro
et bien les derniers enregistrés.
Re: Récupérer une somme
Posté : 07 avr. 2017, 08:44
par moogli
du coup c'est normal vu qu'a chaque tu demandes d'ajouter l'article au panier.
a la fin de l'insertion il faut que tu fasse une redirection pour virer les paramètre d'url et éviter ce genre de problème.
juste en passant, généralement on fait référence au produit avec une clef primaire et l'on ne copie pas ses informations dans une autre table (première forme normale : atomicité). Ce serait pas mal d'avoir une quantité pour les articles non ? (ou alors tu vend que des choses unitaire ?).
@+
Re: Récupérer une somme
Posté : 08 avr. 2017, 13:17
par quattro
moogli :
a la fin de l'insertion il faut que tu fasse une redirection pour virer les paramètre d'url et éviter ce genre de problème.
Comment fait on une "redirection" ? y a t'il un code spécifique ?