2011-12-02 14 views

risposta

6

Con PHP puoi gestire solo le cose lato server. Quello che puoi fare è stamparlo nel tuo iframe:

parent.window.location.reload(); 
+0

perfetto !! Proprio quello di cui avevo bisogno! Grazie! – user840930

+1

. . . un'ulteriore domanda Ho fatto: echo ""; che ricarica l'intera pagina di cui ho bisogno, ma il frame in cui si trovava lo script php in esecuzione non si sta aggiornando. E non riesco a chiamare un altro parent.window.location.reload o anche un onload = \ "window.location = '$ page' \" cosa posso fare? – user840930

+0

non sono sicuro di averlo capito, ma hai controllato il tuo frame src? Controlla se parent.window lo sta caricando correttamente ... – gustavotkg

4

PHP non può costringere il cliente a fare qualsiasi cosa. Non è possibile aggiornare la pagina, per non parlare di aggiornare il genitore di una cornice.

EDIT: Potete naturalmente, rendere PHP scrittura JavaScript, ma questo non è PHP facendo, in realtà è Javascript, e fallirà se JavaScript è disabilitato.

<?php 
    echo '<script>parent.window.location.reload(true);</script>'; 
?> 
0

Usa JavaScript per questo. Si può fare:

echo ' 
<script type="text/javascript"> 
    parent.window.location.reload(true); 
</script> 
'; 

In PHP e si aggiorna la pagina con frame del genitore.

0

che si potrebbe riecheggiare il meta tag per fare l'aggiornamento a intervalli regolari ... come

<meta http-equiv="refresh" content="600" url="your-url-here"> 
24

In realtà è possibile:

Header('Location: '.$_SERVER['PHP_SELF']); 
Exit(); //optional 

e sarà ricaricare la stessa pagina.

+0

Questo dovrebbe essere contrassegnato come approvato perché fa esattamente ciò che è inteso in PHP (non javascript o inserimento in HTML). –

+0

@Ryuji Questo NON risolve la domanda originale. Come farebbe a ricaricare il documento genitore? –

+1

@MikeBrant perché è esattamente ciò che fa. Ordina php per ricaricare la stessa pagina. – NewProger

1
<?php 
echo "<script>window.opener.location.reload();</script>"; 
echo "<script>window.close();</script>"; 
?> 
5

Se hai qualsiasi testo prima di un

header('Location: http://www.example.com/youformhere.php'); 

avrete problemi, perché questo deve essere inviata prima di qualsiasi altro testo viene inviato alla pagina.

Prova utilizzando questo codice al posto

Basta ricordare, questo codice creerà e ciclo infinito, quindi probabilmente avrete bisogno di apportare alcune modifiche condizionate ad esso.

+0

questa è la risposta – waas1919

+0

ha funzionato per me !!! – Jasmeen

1

con PHP è possibile utilizzare due reindirizzamenti. Funziona come l'aggiornamento in alcuni problemi.

è possibile utilizzare una pagina redirect.php e pubblicare il tuo ultimo URL ad esso con il metodo GET (per esempio). quindi in redirect.php puoi cambiare l'intestazione nella posizione che ti è stata inviata tramite il metodo GET.

come questo: tua pagina:

<?php 
header("location:redirec.php?ref=".$your_url); 
?> 

redirect.php:

<?php 
$ref_url=$_GET["ref"]; 
header("location:redirec.php?ref=".$ref_url); 
?> 

che ha lavorato per me bene.

0

Tutto quello che devi fare per aggiornare manualmente la pagina è quello di fornire un link che punta alla stessa pagina

Ti piace questa: Refresh la selezione

-1

Aggiunta seguente nell'intestazione della pagina funziona per me:

<?php 

if($i_wanna_reload_the_full_page_on_top == "yes") 
{ 
$reloadneeded = "1"; 
} 
else 
{ 
$reloadneeded = "0"; 
} 

if($reloadneeded > 0) 
{ 
?> 
<script type="text/javascript"> 
top.window.location='indexframes.php'; 
</script> 
<?php 
}else{} 
?> 
Problemi correlati