Page 1 sur 1

transmetre de données pour une session via javascript

Posté : 01 févr. 2011, 15:36
par josevich82
bonjour tt le monde,

j'ai du créé un module joomla 1.5 basé sur php qui permet d'entendre une webRadio dans un media player et cela en choisissant son logo via un carousel qui contiens plusieurs logos.
le problème que j'ai maintenant c'est que lorsque je navigue dans le site, j'obtiens toujours la radio par défaut à chaque fois que je change de page.

pour mon carousel j'ai du utilisé javascript, et la je trouve un problème de stocké une variable de session pour y mettre le stream de la radio en cours.
alors j'ai créé un fichier session.php où j'ai mit le code suivant:

<?php
session_start();
$_SESSION['stream']=$_GET['lien'];
?>


et dans le script du module j'ai mis cela(solution que j'ai trouvé dans un forum):
obj = new Image();
obj.src = "session.php?lien=http://xxxxx/";

j'ai essayé une autre solution:
xhr = new XMLHttpRequest();
xhr.open('GET', 'session.php?lien=http://xxxxx/', true);
xhr.send(null);

pour les deux solution, quand je fais :

alert('<?php echo $_SESSION['stream'];?>');

je n'obtiens rien.

Alors si vous voyez une solution à ce probléme, je vous en serai reconnaissant .
merci d'avance!

Re: transmetre de données pour une session via javascript

Posté : 01 févr. 2011, 20:13
par devlop78
Plusieurs causes possibles :

- echec de la mise en place de la session (activer les erreurs pour voir)
- echec de l'envoi du cookie de session (rare, mais à mon boulot je dois faire un setcookie() pour envoyer l'id de la session au navigateur, c'est bête ...)
- valeur $_GET['lien'] null ou vide, peut-être vérifier qu'il existe et !== '' avant de l'enregistrer dans la variable de session
- le navigateur ne gère pas les cookies

Voyant le code, je dirais le troisième problème ... tu dois surement l'effacer ... regarde un var_dump() dessus pour voir ... s'il est égal à String '' c'est que c'est ça ; s'il est marqué comme null, alors c'est surement une des trois autres possibilités.

Cordialement,