Eléphant du PHP |
130 Messages
21 mars 2007, 20:06
bonsoir,
Les codes ajax sont bons puisque ça fonctionne comme une horloge suisse. C'est pour ça que j'ai pas mis le code.
Mais apres quelques tests j'ai trouvé d'ou vient le probleme, et c'est bien onbeforeunload qui fiche la bordel dans mes scripts.
Dans ma page, j'ai donc plusieurs boutons, et lorsque je clique sur l'un d'entre eux, onClick appele une fonction qui va lancer xmlhttprequest, qui finit par appeler un script PHP qui doit créer une variable. Par exemple si je clique sur le bouton BOLD, php créer une variable et l'utilisateur peut taper son texte en gras.
Tout marche tres bien, sauf si j'appele onbeforeunload.
Je viens de faire des tests, et le script PHP crée bien la variable de session, mais il s'agit d'une variable fantome, si si, car lorsque j'ecris du texte, le script qui doit afficher le texte en gras ne fait rien. Et si je fais un refresh la variable de session s'efface tout de suite. J'en ai marre de ces conneries lol
Voici le code du script php qui est super simple :
Code : Tout sélectionner
<?php
$text=$_POST['bouton'];
if($text=="bold"){
$_SESSION['textgras']=$text;
}
elseif($text=="italic"){
$_SESSION['textitalic']=$text;
}
elseif($text=="souligne"){
$_SESSION['textsouligne']=$text;
}
?>
Code : Tout sélectionner
<script type="text/javascript">
$winev = window.Event;
if(winev){
window.onbeforeunload = function(winev){
return maFonction(winev);
}
else{
window.onbeforeunload = function(){
return maFonction(winev);
}}
Une fois que je clique sur le bouton bold, j'ai bien la variable TEXTGRAS qui s'affiche dans les variables de sessions, mais des que j'ecris et que j'appele ajax pour le script de mise en forme, la variable s'efface tout de suite au meme titre qu'un refresh. Avec onunload, ça marche aucun probleme, mais j'ai absolument besoin de onbeforeunload. J'ai beau cherché sur google une réponse je trouve rien.