[PHP] fonction
okuni
Messages postés
1325
Statut
Membre
-
okuni Messages postés 1325 Statut Membre -
okuni Messages postés 1325 Statut Membre -
Bonjour,
J'ai une fonction pour mon panier virtuel pour modifier le nombre d'articles que le client achète et met dans son panier virtuel.
mais le problème, c'est que quand je modifie une quantité grâce a cette fonction, le nombre contenue dans la variable de session ($_SESSION['panier']['quantite']) est vide :/
avec quelque écho, j'ai vérifié que lors de l'envoi, il y a bien les champs post rempli avec le bon nombre.
par contre lorsque je fais un écho $modifie, là, la variable n'affiche rien.
Où se trouve le problème?
--
L'amour, c'est comme les spaghettis; quand c'est mou, c'est cuit. (proverbe belge)
J'ai une fonction pour mon panier virtuel pour modifier le nombre d'articles que le client achète et met dans son panier virtuel.
function modif_quantite($ref_article, $quantite)
{
/* On initialise la variable de retour */
$modifie = false;
if(!isset($_SESSION['panier']['verrouille']) || $_SESSION['panier']['verrouille'] == false)
{
if(nombre_article($ref_article) != false && $quantite != nombre_article($ref_article))
{
/* On compte le nombre d'articles différents dans le panier */
$nb_articles = count($_SESSION['panier']['id_produit']);
/* On parcoure le tableau de session pour modifier l'article précis. */
for($i = 0; $i < $nb_articles; $i++)
{
if($ref_article == $_SESSION['panier']['id_produit'][$i])
{
$_SESSION['panier']['quantite'][$i] = $quantite;
$modifie = true;
}
}
}
else
{
/* L'article est absent du panier, donc on ne peut pas modifier la quantité ou bien
* le nombre est exactement le même et il est inutile de le modifier
* Si l'article est absent, comme on a ni la taille ni le prix, on ne peut pas l'ajouter
* Si le nombre est le même, on ne fait pas de changement. On peut donc retourner un autre type de valeur pour indiquer une erreur qu'il faudra traiter à part lors du retour d'appel
*/
if(nombre_article($ref_article) != false)
{
$modifie = "absent";
}
if($quantite != nombre_article($ref_article))
{
$modifie = "quantite_ok";
}
}
}
return $modifie;
}
mais le problème, c'est que quand je modifie une quantité grâce a cette fonction, le nombre contenue dans la variable de session ($_SESSION['panier']['quantite']) est vide :/
avec quelque écho, j'ai vérifié que lors de l'envoi, il y a bien les champs post rempli avec le bon nombre.
par contre lorsque je fais un écho $modifie, là, la variable n'affiche rien.
Où se trouve le problème?
--
L'amour, c'est comme les spaghettis; quand c'est mou, c'est cuit. (proverbe belge)
2 réponses
-
si tu fais :
<?php
echo modif_quantite($ref_article, $quantite);
?>
ta fonction doit te retourner la valeur de $modifie vu que c'est elle qui est renvoyé par la commande "return" à la fin de la fonction. -
Merci pour ta réponse, c'était tout simple :)
Par contre, j'ai une autre question, au début, je dit que la variable $modifie = false
et après si tout s'est bien déroulé, je le met égal a true
Sauf que ma fonction me retourne toujours false, pourquoi?