Récurrence d'une fonction anormale
Posté : 30 mai 2010, 19:46
Bonjour,
voici une fonction :
var TOKEN_JS_GLOBAL = "<?php echo $template->sessions->CSRFNewToken('JS_GLOBAL'); ?>";
J'ai un énorme soucis avec ça. Si j'enlève cet appel à la méthode, aucun fichier data.txt n'est créé. Si je laisse cette ligne, 4 indentifiants uniques sont créés. Ce qui est extrêment embêtant car du coup ... plus rien ne fonctionne ...
D'où peut venir cet appel multiple ? La page n'est pourtant ouverte qu'une seule fois (puisque c'est la page du xhtml ...). A noter que TOKEN_JS_GLOBAL de javascript correspond au premier identifiant créé par php.
Merci encore, là je tombe sur un problème nouveau et très étrange, mais néanmoins forcément explicable ...
voici une fonction :
public function CSRFNewToken($service = 0,$expire = 600) {
$id = md5(uniqid(rand(), true));
$fp = fopen('data.txt', 'a'); // pour débogage
fwrite($fp, $id . "\n");
fclose($fp);
if ($expire == 0) {
$_SESSION['iniSecure_CSRF_Token'][$service]['expire'] = 0;
} else {
$_SESSION['iniSecure_CSRF_Token'][$service]['expire'] = time() + $expire;
}
$_SESSION['iniSecure_CSRF_Token'][$service]['id'] = $id;
return $id;
}
Elle n'est pour le moment appelé qu'une seule fois dans ma page. La page index.php appel template.php (des objets) qui appelle la page du template qui elle-même lance :var TOKEN_JS_GLOBAL = "<?php echo $template->sessions->CSRFNewToken('JS_GLOBAL'); ?>";
J'ai un énorme soucis avec ça. Si j'enlève cet appel à la méthode, aucun fichier data.txt n'est créé. Si je laisse cette ligne, 4 indentifiants uniques sont créés. Ce qui est extrêment embêtant car du coup ... plus rien ne fonctionne ...
D'où peut venir cet appel multiple ? La page n'est pourtant ouverte qu'une seule fois (puisque c'est la page du xhtml ...). A noter que TOKEN_JS_GLOBAL de javascript correspond au premier identifiant créé par php.
Merci encore, là je tombe sur un problème nouveau et très étrange, mais néanmoins forcément explicable ...