récupération de cookie et appel de script
Bonjour,
j'ai un soucis et je tourne en rond.
j'ai besoin de lire un cookie et d'effectuer ensuite un appel de script avec le contenu de ce cookie en paramètre.
voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
<div id ='test'>
</div>
<script LANGUAGE="JavaScript">
function GetValeurCookie (nom) {
var cookielength = document.cookie.length;
var arg = nom + "=";
var arglength = arg.length;
var i = 0;
while (i < cookielength) {
var j = i + arglength;
if (document.cookie.substring(i, j) == arg)
return ValeurCookie (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function ValeurCookie (Pos) {
var endstr = document.cookie.indexOf (";", Pos);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring (Pos, endstr));
}
// recup cookie valeur
var code = GetValeurCookie("valeur");
function appelle_js() {
var newscript = document.createElement('script');
newscript.type = 'text/javascript';
newscript.onload = onLoad;
newscript.src = 'http://site.com/script.php?code=' + code;
var head = document.getElementById('test');
head.appendChild(newscript);
}
function onLoad() {
document.close();
}
appelle_js();
</script> |
le résultat de ce script me donne :
Code:
1 2
|
<script type='text/javascript' src='http://site.com/script.php?code=null'></script> |
Il fonctionne donc en partie mais :
1) je ne récupère pas la valeur du cookie.(égale à null)
2) le résultat s'affiche bien à l'intérieur de la div dont l'id est test comme je le spécifie à la ligne :
Code:
1 2 3
|
var head = document.getElementById('test');
head.appendChild(newscript); |
mais le contenu renvoyé par le script s'affiche n'importe ou (tout en bas de page). or, si j'appelle directement le script
Code:
1 2 3 4
|
<div id='test'>
<script type='text/javascript' src='http://site.com/script.php?code=null'>
</script></div> |
dans la div 'test', la aucun soucis, le contenu s'affiche bien à l'intérieur de la div... je ne comprend rien ...
sinon, le cookie que j'essaye de lire, le voici :
Code:
label=#_#valeur=236584#_#prov=#_#login=oui#_#; ses=6strevbsy
et je veux récupérer le contenu de "valeur"
j'espère que ma question est claire...
Merci pour votre aide