Cookies en JavaScript, lecture cookies dans tableau php

Signaler
Messages postés
39
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
11 décembre 2008
-
Messages postés
39
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
11 décembre 2008
-
Bonjour,

N'étant pas satisfait du panier Paypal, je recherche à faire mon propre panier.

Mon site est pour la plus part en .html, et je souhaite garder cette structure. J'ai donc opté pour la gestion d'un panier en JavaScript et non en PHP, car je ne souhaite pas requalifier toute mes pages en .php.

Je pensais donc garder les informations du panier dans des cookies, créer en javascript pour garder mes pages en .html. et de les envoyer sur ma page panier.php, pkoi en php car j'ai un niveau intermédiaire en php et je souhaite les lier à ma base de donnée SQL.

Mon niveau etant inexistant en JavaScript,
<li>auriez vous un code pour la création de cookie quand l'on clique sur le bouton d'un formulaire en POST,</li><li>comment récupérer les informations du cookies (articles, intitulé optionnel, prix Unitaire) dans un tableau gérer en PHP lors de l'ouverture de la page panier.php.</li>Merci d'avance

12 réponses

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
41
salut

pour faire un cookie, il faut utiliser document.cookie

Mais c'est _vraiment_ pas conseille de faire comme ca... tout faire en php, ca te ferait moins de travail, et ca serait probablement plus sur.
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
bonjour,

pourquoi donc veux-tu mémoriser des données coté client, en javascript,
            dans un cookie, alors que tu appelles un script php lors de la validation du
            formulaire ? ou alors... j'ai rien compris ?
            tu te compliques la vie... non ?

Cordialement    Bul    [mon Site]  [M'écrire]    
Messages postés
39
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
11 décembre 2008

Non je me complique pas la vie, c'est justement parce que je préfère ne pas renommer mes pages en .php que je souhaite faire comme ça.

A part si vous me dites que je peux appliquer les balises php dans un fichier en .html.

Pour la 1ere question, je ne vois ce qu'il y a de dangereux a stocker des articles pour le panier dans des cookies.
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>A part si vous me dites que je peux appliquer les balises php dans un fichier en .html
aïe aïe aïe...
c'est le php qui crée la page html.     donc....  pas de balises php en html !!

>>parce que je préfère ne pas renommer mes pages en .php
euh.... ton formulaire n'appelle pas un script php ?
et/ou même.. puisque tu parles de traiter ce cookie en php...
tu vas bien devoir appeler du php... non ?
ou alors... j'ai rien compris.

          Bul     [mon Site]  [M'écrire]    
Messages postés
39
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
11 décembre 2008

Sauf erreur de ma part,

Si je veux garder mon panier en mémoire et que je le fais en PHP, il faut que je créer une session php au debut de chaque page, c'est à dire rééditer toutes mes pages en php.
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>Si je veux garder mon panier en mémoire et que je le fais en PHP,
déjà... garder en mémoire, ça ne veut rien dire.
surtout que tu utilises le php ( sur le serveur )
et le html/javascript ( sur le micro du client ) :
ils n'ont pas la "même mémoire".

>>il faut que je créer une session php au debut de chaque page,
euh... tu fais comme tu veux...
mais un formulaire suffit, c'est d'ailleurs
le moyen "privilégié" et tout simple de communiquer
du htm/javascript au php.

          Bul   [mon Site] [M'écrire]         
Messages postés
39
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
11 décembre 2008

Lol, je traduit garder en mémoire un panier veut dire, que lorsque tu cliques sur un article ou que tu ailles ensuite, tu ne perdras pas ton panier, les articles que tu as choisi étant en mémoire (quelque part), pour les reprendre quand tu ouvres ta page panier.

En clair, je veux bien utiliser du php au niveau des formulaires, mais pour la gestion de se panier "en mémoire", il faudrait soit que j'ouvre une session au début de chaque page, soit créer des cookies.

D'ailleurs peut on créer, modifier et reprendre les cookies en php ? car je ne souhaite pas faire d'ouverture de session php en début de chaque page, je n'ai pas envie de reprendre chaque pas en .html pour les mettre en .php
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
va bien falloir que tu les reprenne ces pages pour traiter  les cookies !
mais %¤* %# ~=!° pourquoi ne pas traiter l'envoie du formulaire vers le php ?!?

c'est lui "ta mémoire" !  ( ce que tu dois déjà faire d'ailleurs ! )

pourquoi mettre dans un cookie ce que tu peux mettre dans un formulaire ????
que tu gères déjà ?   

mais enfin.... tu fais comme tu le sens, et la caravane passe après tout....

          Bul     [mon Site]   [M'écrire]         
Messages postés
39
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
11 décembre 2008

Si je dois recommencer à t'expliquer depuis le début à chaque fois, ça risque de nous enerver tout les 2.

Enfin, je recommence. J'ai des pages avec formulaire et d'autres sans. Lorsque j'envoi mon formulaire dans un page panier, comportant un panier de commande, je le fais biensur en Php parce que je ne comprend pour le moment que le Php et si tu me dis que c'est plus simple je te crois. Mais lorsque tu quittes ta page panier.php, il faut stocker ses informations quelques part, c'est ce que fais chaque site e-commerce.
Je m'inspire de ldlc.com car je trouve que c'est un site très bien fait.
Donc pour garder ses informations en mémoire où puis je les stocker ?
<li>En base de données SQL ---> hors de question</li><li>En session php --> renommé chaque pas en php, je n'ai pas trop envie de faire mon site de cette manière</li><li>Dans des cookies --> j'ai vu qu'il fallait créer, modifier et supprimer les cookies en Javascript --> je ne connais pas le javaScript
</li>Mes soucis étant,
<li>Lorsque j'envoi les informations en php vers mon panier, il faut aussi que je modifie ou creer les cookies,</li><li>reprendre les cookies au niveau de mon panier, pour réinjecter chaque article dans un tableau.
</li>Pour le reste pas de souci, les commandes final seront envoyer dans ma base SQL et vers le panier Paypal.

J'espère avoir été un peu plus clair.

++
Constantine
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>Si je dois recommencer à t'expliquer depuis le début à chaque fois,
>>ça risque de nous enerver tout les 2.
exactement la même remarque...
à tel point, que je ne peux que te conseiller de relire ce que je disais
ou alors ( mais je l'ai déjà dis aussi ), tu fais comme tu le sens.

          Bul   [mon Site] [M'écrire]        
Messages postés
39
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
11 décembre 2008

Désolé, mon idée au départ n'était pas très clair, je pensais que l'on était obligé de créer des cookies en Javascript.

Maintenant qu'on est d'accord sur ce déroulement.

Aurais tu du code sur la création, modification des cookies en php ?
Messages postés
39
Date d'inscription
mercredi 4 juin 2008
Statut
Membre
Dernière intervention
11 décembre 2008

Après avoir trouvé quelques info sur internet,
Simplement au niveau du Panier.php, je récupère mon POST que je place dans un cookie.

Je cherche dans un premier temps à voir si mon incrémentation marche au niveau du nombre d'articles, ça a l'air d'être bon.
Par contre, je n'arrive pas a afficher les cookies qui comporte les intitulés des articles --> variable $_POST['on0']

Pouvez vous vérifier mon code et me dire mes fautes :

En début avant la balise Html
<?php
// Création de cookie
$on0=$_POST['on0'];
if (isset($on0)) {
    $compte = $_COOKIE['compte'] + 1;
    setcookie("compte", $compte, time()+3600); // Compter le nombre d'article
    setcookie("Panier[$compte]", "$on0", time()+3600); // création de cookies avec le nouvelle article
}
?>

A l'intérieur d'une balise Html :

<?php
    if (isset($_COOKIE['Panier'])) {
         echo  "il y a ".$_COOKIE['compte']. " articles dans le panier" ;
        for ($j=1 ;$_COOKIE['Panier[$compte]'] >=$j ; $j++) {
            echo $_COOKIE['Panier[$j]'];
        }
    }
    ?>

Merci d'avance