Échec concaténation dans une fonction
teddol
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
Pitet Messages postés 2826 Date d'inscription Statut Membre Dernière intervention -
Pitet Messages postés 2826 Date d'inscription Statut Membre Dernière intervention -
Hello les fans de PHP,
J'ai une fonction qui me permet d'ajouter des articles dans un panier. Le panier est sauvegardé dans une SESSION dont le contenu est une chaîne. Chaque article ajouté dans cette chaîne est séparé par un séparateur "|".
Le soucis est que lorsque je teste le contenu de ma fonction, le séparateur est bien ajouté à chaque fin d'article. Mais lorsque j'appelle la fonction brute, le séparateur n'est pas ajouté.
Sauriez-vous pourquoi ?
Voici ma fonction:
J'ai une fonction qui me permet d'ajouter des articles dans un panier. Le panier est sauvegardé dans une SESSION dont le contenu est une chaîne. Chaque article ajouté dans cette chaîne est séparé par un séparateur "|".
Le soucis est que lorsque je teste le contenu de ma fonction, le séparateur est bien ajouté à chaque fin d'article. Mais lorsque j'appelle la fonction brute, le séparateur n'est pas ajouté.
Sauriez-vous pourquoi ?
Voici ma fonction:
function BASKET_ADD_PRODUCT($id_product, $id_size, $qty){
$basket_line = explode("|", $_SESSION['basket']);
$new_id_line = sizeof($basket_line)-1;
$string = $new_id_line.";".$id_product.";".$qty.";".$id_size."|"; // | comme séparateur
$_SESSION['basket'] = $_SESSION['basket'].$string;
}
A voir également:
- Échec concaténation dans une fonction
- Fonction si et - Guide
- Mode sans echec ps4 - Guide
- Mode sans echec - Guide
- Echec de l'analyse antivirus - Astuces et Solutions
- Fonction miroir - Guide
1 réponse
Salut,
Je ne vois pas de raison au fait que le séparateur ne soit pas ajouté, celui-ci est bien toujours concaténé dans ta variable de session.
Une solution alternative serait simplement d'utiliser un tableau au lieu de s’embêter avec les séparateurs. Cela devrait simplifier tes traitements, par exemple :
Le même principe pourrait être utilisé pour les données id_product, id_size et qty.
Bonne journée,
Je ne vois pas de raison au fait que le séparateur ne soit pas ajouté, celui-ci est bien toujours concaténé dans ta variable de session.
Une solution alternative serait simplement d'utiliser un tableau au lieu de s’embêter avec les séparateurs. Cela devrait simplifier tes traitements, par exemple :
function BASKET_ADD_PRODUCT($id_product, $id_size, $qty) { $_SESSION['basket'][] = $id_product . ";" . $qty . ";" . $id_size; }
Le même principe pourrait être utilisé pour les données id_product, id_size et qty.
Bonne journée,