Aller au contenu

Kill the doc quid de l'ajax ?


Zlika

Sujets conseillés

Bonjour,



Une question qui me taraude !



J'ouvre une page qui déclenche un ajax.


Je clique un lien qui appelle une nouvelle page alors que l'ajax s’exécute.



Que se passe-t-il ?



1) le processus ajax s'arrête


2) le processus aboutit.



Merci pour votre érudition.






Lien vers le commentaire
Partager sur d’autres sites

Bonjour et merci à vous pour vos réponses,



J'ai passé le cron en post dont l'option async est sur true pas défaut. En fait si je comprends bien le script php lancé en ajax ne s'arrêtera pas


Je vais quand même me faire un test et je reviens vous dire


Lien vers le commentaire
Partager sur d’autres sites

Bonjour,



Pour info


J'ai donc fait un test avec un script ajax qui contient un sleep(20) suivi d'un update en base ! Le script php est éxécuté coté serveur, sur changement de page et sur kill de l'onglet sous FF et chrome.



Bon WE


Lien vers le commentaire
Partager sur d’autres sites

Ta première question était un peu ambigüe, d'où les deux réponses apparemment contradictoires (Et toutes deux exactes) que tu as reçues :


- Lors de l'exécution du onUnload, les processus AJAX (Donc purement JavaScript) s'arrêtent


- Toutefois, à partir du moment où l'exécution d'un code côté serveur est lancée (PHP ou autre), cette exécution est totalement indépendante du navigateur. Donc, les processus serveur lancés ne s'arrêteront pas


Lien vers le commentaire
Partager sur d’autres sites

Oui je me suis mal exprimé, tout est tué lors du window.unload : ta requête si elle est en cours, l'implémentation de ta méthode onsuccess (success si tu utilises jquery), tes écouteurs, tout.



Il me paraissait évident que si ta requête est passé côté serveur... elle semble difficile à arreter en javascript ... désolé si tu as mal compris.


Si tu cherches à faire ce que tu sembles vouloir... essaie autre chose que l'ajax qui ne suffira pas (mais dans tous les cas, je me demande bien quoi ;) ).


Lien vers le commentaire
Partager sur d’autres sites

Très perspicace SStephane cool2.gif


Ce qui m'a poussé à rédiger ce post c'est effectivement un ajax en solution temporaire d'un script qui ne fonctionne pas en crontab ! ça n'est d'ailleurs pas assez viable donc je retourne dans le crontab lequel est fait pour ça !



Tout est clair ! Merci pour vos contributions, j'ai quand même recalé une brique de base en passant ;-)



Zlika


Lien vers le commentaire
Partager sur d’autres sites

Si tu voulais obtenir ça en web, la seule solution serait le socket avec côté serveur, des appels transactionnels à ta base (rollback si la connexion est coupé avant la fin, commit sinon).


Comme quoi c'est quand même faisable ;)


Lien vers le commentaire
Partager sur d’autres sites

Bien vu cool2.gif Mais je suis un vieux troll qui fonctionne encore sur du MyISAM


C'est problématique sur les modifs de table mais sur select en front avec un bon cache, je tourne à 100 ms sur certaines pages


Mais tu viens de me démontrer l'utilité de l'innodb.... que j'intuitais déjà !



Non j'ai un problème de cron parceque je ne maitrise pas la programmation objet poussée de mon web service, j'ai un problème de chemin que je n'arrive pas à résoudre !


Faut que je prenne des cours et que j'arrête le procédural ! LOL



Bonne soirée


Zlika

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...