ho questo codice che mi fa un primo countdown a una condizione, e un secondo countdown alla seconda condizione

Codice PHP:
<?php if($variabile['prova']!='ciao'){

?>

<form name="redirect">
countdown 100 secondi<input type="text" size="2" name="counter"> secondi
</form>


<script language="Javascript" type="text/javascript">
<!--
// Imposto il sito di destinazione
var destinazione = "index.php";

// Imposto il numero di secondi per il conto alla rovescia
var secondi = 100;

// Creo la variabile conteggio e contestualmente
// imposto il valore di partenza al numero di secondi + 1
var conteggio = document.redirect.counter.value = secondi + 1;

// Creo la funzione che gestisce il conto alla rovescia
function contoallarovescia()
{
  // Se la variabile conteggio è maggiore di 1...
  if (conteggio > 1)
  {
    // decremento il valore della variabile conteggio
    conteggio = conteggio - 1;
    // e contestualmente aggiorno il numero mostrato a video
    document.redirect.counter.value = conteggio;
  // ...se conteggio è uguale o minore di 1 eseguo il redirect
  }else{
    window.location = destinazione;
    return
  }
  // La funzione ri-esegue se stessa ogni secondo fino alla
  // esecuzione del redirect
  setTimeout("contoallarovescia()", 1000);
}

// Lancio per la prima volta la funzione (che poi, come sappiamo
// provvederà autonomamente ad auto eseguirsi ogni secondo)
contoallarovescia()
//-->
</script>
<?php
}else{
?>

<form name="redirect2">
countdown 300 sec <input type="text" size="2" name="counter"> secondi
</form>


<script language="Javascript" type="text/javascript">
<!--
// Imposto il sito di destinazione
var destinazione = "index.php";

// Imposto il numero di secondi per il conto alla rovescia
var secondi = 300;

// Creo la variabile conteggio e contestualmente
// imposto il valore di partenza al numero di secondi + 1
var conteggio = document.redirect2.counter.value = secondi + 1;

// Creo la funzione che gestisce il conto alla rovescia
function contoallarovescia()
{
  // Se la variabile conteggio è maggiore di 1...
  if (conteggio > 1)
  {
    // decremento il valore della variabile conteggio
    conteggio = conteggio - 1;
    // e contestualmente aggiorno il numero mostrato a video
    document.redirect2.counter.value = conteggio;
  // ...se conteggio è uguale o minore di 1 eseguo il redirect2
  }else{
    window.location = destinazione;
    return
  }
  // La funzione ri-esegue se stessa ogni secondo fino alla
  // esecuzione del redirect2
  setTimeout("contoallarovescia()", 1000);
}

// Lancio per la prima volta la funzione (che poi, come sappiamo
// provvederà autonomamente ad auto eseguirsi ogni secondo)
contoallarovescia()
//-->
</script>
<?php
}
?>
questo countdown si trova dentro un div che si aggiorna ogni 3 secondi

mentre il div si aggiorna il primo countdown continua a decrescere, però
quando la condizione risulta falsa e quindi cambio countdown,
il countdown non parte, parte solamente se aggiorno l'intera pagina...

qualcuno può gentilmente aiutarmi?