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 :
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 :
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 :
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
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 :
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
Partager