2017-09-30 3 views
0

J'utilise ceci pour demander la page de rafraîchir toutes les 10 secondes, dans le script shell CGI:html meta refresh ne va pas à l'URL

      pid=$! 

          if [[ `ps -p $pid | wc -l` -gt 1 ]] 
          then 
            output="Program is running. Running time depends on the number of alternatively spliced proteins the submitted gene has. Results will be displayed here." 

            echo "<html>" 
            echo "<head>" 
            echo "<meta http-equiv="refresh" content="10;URL='http://XXX/gene-to-structure/navnav.gif'"/>" 
            echo "</head>" 
            echo "<body>" 

            echo "<table width="750" border="0" cellspacing="0" cellpadding="0">" 
            echo "<tr><td><img src=\"../../images/calc.gif\" align=\"absmiddle\"> <strong> $output </strong></td></tr>" 
            echo "</table>" 
            echo "</body>" 
            echo "</html>" 
          fi 

Mais il ne me prend à la « URL » . Après 10 secondes, il actualise la même page. Pourriez-vous s'il vous plaît laissez-moi savoir ce qui pourrait être faux? Merci beaucoup!

+0

Pouvez-vous utiliser Ctrl-U dans votre navigateur pour capturer et afficher le code HTML exact que votre navigateur reçoit de ce script? –

Répondre

0

Cela ressemble à un problème de citation, ce qui est étonnant parce que cela n'arrive presque jamais à bash. :-) Essayez quelque chose comme ceci:

echo "<meta http-equiv=\"refresh\" content=\"10;URL='http://XXX/gene-to-structure/navnav.gif'\"/>" 

pour voir si cela vous rapproche. L'examen du HTML reçu par le navigateur est un moyen facile de confirmer si vous avez généré le code HTML exact que vous aviez prévu.

+0

Merci! Cela fonctionne, mais après il va à l'URL, il ne rafraîchit pas? Je m'attendais à ce qu'il rafraîchisse toutes les 10 secondes jusqu'à ce que le "$ pid" soit "-gt" 1. Pourriez-vous s'il vous plaît laissez-moi savoir ce que le problème pourrait être? Ce que j'essaye de faire est, pendant que le programme fonctionne en arrière-plan, le navigateur actualise toutes les 10 secondes avec l'URL donnée, et quand le programme se termine en arrière-plan alors l'URL disparaît et la sortie est présentée dans la page web L'URL d'actualisation a été donnée. Merci. – Dipak