Écrire un cookie pour Safari

Cyrano12

Membre enregistré
22 Octobre 2007
5
0
Bonjour tout le monde,
je ne suis pas du tout un habitué du monde Apple ni de Safari. Aussi, les lumières des vieux routiers en la matière me seraient bien utiles.

Travaillant actuellement sur le développement d'un site de e-commerce en PHP/Oracle, je dois également utiliser des cookies en particulier pour le panier. Ce cookie est écrit en javaScript. Le système a été testé avec pas mal de navigateurs et fonctionne partout sauf avec Safari sous Mac OSX. Curieusement, j'ai testé avec la version Windows de Safari et ça marche. Mais pas sous mac. En essayant de trouver le bobo, j'ai remarqué que le cookie est écrit mais avec une date d'expiration qui ne correspond pas du tout à ce que j'avais prévu en me mettant une date d'expiration en 1971, ce qui ne fait pas tout à fait mon affaire.

Est-ce que l'interprétation de javaScript sous Safari requiert certains éléments particuliers non standards pour accepter la date d'expiration que j'ai décidé d'utiliser ?
Merci d'avance pour toute piste de solution :)

[Edit]
Petite trouvaille : l'utilisation de new Date() retourne une valeur erronée.
En faisant :
alert(new Date());
ça devrait m,afficher la date courante, or ça m,affiche le 12 janvier 1971... d'où l'erreur.
Bug Safari ? Ou autre chose ?

Je continue à chercher, toute aide sous forme de piste sera bienvenue ;)
[/Edit]
 
Salut Fredmac75, merci pour la réponse.

Je viens d'éditer mon précédent message pour indiquer l'avancement : le problème se situe au niveau de la récupération de la date courante en JavaScript.
 
est-ce que tu peux écrire ici ton bout de code...
utilise la balise code... celle avec le dièse, pour insérer ton code. ;)
Mouais, situ veux mais tu n'y découvriras rien de nouveau :siffle:

Bloc de code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" xml:lang="fr" />
    <title>Date en JavaScript</title>
    <script type="text/javascript">
    /* <![CDATA[ */
    var maintenant = new Date();
    /* ]]> */
    </script>
  </head>
  <body>
  <p><a href="./" title="Essai pour Safari" onclick="alert(maintenant); return false;">Test</a></p>
  </body>
</html>
Si tu testes ça sous n'importe quel navigateur, ça devrait t'afficher une alert avec "Mon oct 22 2007 11:22:26 GMT +0200 (en fonction de ta localisation s'entend)

Sous Mac OSX avec Safari, j'obtiens pour la même chose : "Mon Jan 12 1970 22:02:27 GMT+0100"
 
Bon laisse tomber, je viens de trouver, je sens qu'il y en a un qui va se faire secouer un peu. Son mac n'est pas réglé à l'heure, donc forcément, mon JavaScript fonctionne très bien... pour son heure.

Désolé pour le dérangement, sujet à mettre en délestage parce que sans intérêt réel.

Merci quand même :rose:
 
ça c'est balot...:rateau:

C'est probablement l'une des raisons pour laquelle il ne faut pas utiliser de js dans le cadre du panier d'un site e-commerce... entre autres choses.
C'est malheureusement une exigence du client. Je ne suis pas tout à fait un débutant en la matière et ce n'est pas un petit site magasin, c'est une grosse application pour un acteur majeur de la grande distribution en France. D'autre part, je suis pas tout seul, on est tout une équipe sur ce développement ;)
Si ça avait été mon choix, le panier n'aurait jamais abouti dans un cookie. Mais ça offre en revanche un petit avantage en terme d'ergonomie à savoir que si tu commences à remplir ton panier et que tu quittes le site, en y revenant plus tard pour terminer tes courses, tu retrouves ton panier dans l'état où tu l'avais laissé.

Reste que tout n'est pas résolu pour autant, il semble que mon problème global soit reporté maintenant sur l'interprétation de code pour enregistrer une chaine JSon et c'est pas encore gagné.

Autre problème, j'ai une version 1.3.2 de Safari. J'ai essayé de trouver une version plus récente qui ne soit pas en beta sur le site de Apple, mais bon, leur site est aussi pratique que celui de microsoft en la matière et trouver quelque chose relève du coup de pot :D

Enfin merci quand même, je replonge parce que la quantité de boulot est encore assez importante et mettre ça en ligne en janvier, c'est pas gagné non plus.