2010-06-09 4 views
0

Sur ma forme onbutton soumettre des événements suivants se produit:Pour exécuter deux CGIs simultanément

1) CGI est appelé qui télécharge le fichier

2) fonction Javascript/Ajax est appelé qui ouvre une demande pour un autre CGI et est censé recevoir des valeurs mises à jour à partir de là. Cependant, il semble que le CGI avec lequel Ajax communique ne répond pas aux requêtes Ajax.

Ma question est la suivante: est-il possible d'exécuter deux CGI simultanément?

Répondre

0

Oui, il n'y a aucune raison pour laquelle vous ne pouvez pas exécuter 2 cgi simultanément, d'un autre côté, il y a d'innombrables façons de le rendre difficile avec mon favori personnel étant l'utilisation de beans session stateful. Sérieusement, je pense que c'est probablement dû au fait qu'en appuyant sur le bouton submit, vous allez en fait à une autre page qui détruit l'environnement AJAX/Javascript, il n'y a plus rien à réagir sur le second CGI.

Maintenant, c'est une supposition, parce que de nos jours, tant de choses différentes peuvent se produire lorsque vous appuyez sur un bouton, mais je pense qu'il vaut la peine de vérifier cela.

+0

Oui, quelque chose de ce genre est en train de se produire. Cependant, je voudrais ajouter ici, Ajax reçoit la dernière réponse de CGI pas l'intermédiaire. En effet, un autre CGI reçoit également une réponse intermédiaire, mais dans tous les cas ce n'est pas TOUJOURS comme il devrait le recevoir. Mon CGI avec lequel Ajax communique utilise une commande linux system() pour o/p les données. Une idée comment devrais-je aller plus loin? – Punit

+0

GET, PUT ou POST une demande et vous obtenez une réponse. Afin de faire quelque chose avec la réponse, le script doit toujours être là, ou le serveur http va tuer le script CGI lorsque la connexion est rompue. Vous pouvez envisager de remplacer le bouton d'envoi par un bouton normal et de soumettre le formulaire lorsque vous savez que votre requête AJAX est terminée. Ou bien en utilisant onClick pour attendre la fin du script AJAX –

+0

Eh bien, l'Ajax obtient un responseText de la 2ème CGI donc Ajax, CGI1 et CGI2 fonctionnent simultanément. Impossible d'attendre la fin du script AJAX. Quelque chose ne va pas avec CGI2. Ajax fonctionne correctement, c'est seulement qu'il n'obtient aucune réponse de CGI2. – Punit

Questions connexes