ti-enxame.com

PHP atualizar janela? equivalente a recarga de página F5?

Existe alguma coisa em PHP que é o equivalente a pressionar manualmente o botão de recarregar a página F5? Meu script php está em um frame e não é o script pai, mas ele precisa atualizar a página inteira e não apenas o frame.

9
user840930

Com PHP você só pode lidar com coisas do lado do servidor. O que você pode fazer é imprimir isso no seu iframe:

parent.window.location.reload();
6
gustavotkg

Na verdade, é possível:

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

E recarregará a mesma página.

24
NewProger

Se você tem algum texto antes de um 

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

você terá problemas, porque isso deve ser enviado antes que qualquer outro texto seja enviado para a página.

Tente usar este código

<?php 
$page = $_SERVER['PHP_SELF'];
echo '<meta http-equiv="Refresh" content="0;' . $page . '">';
?>

Apenas lembre-se, esse código irá criar um loop infinito, então você provavelmente precisará fazer algumas mudanças condicionais nele.

6
vr_driver

O PHP não pode forçar o cliente a fazer nada. Não é possível atualizar a página, muito menos atualizar o pai de um quadro.

EDIT: Você pode, claro, fazer PHP escrever JavaScript, mas isso não é PHP fazendo, é realmente JavaScript, e ele falhará se o JavaScript estiver desabilitado.

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

com php você pode usar dois redirecionamentos. Funciona da mesma forma que a atualização em alguns problemas.

você pode usar uma página redirect.php e postar seu último url pelo método GET (por exemplo). então no redirect.php você pode mudar o cabeçalho para o local que você enviou para ele pelo método GET.

assim: sua página:

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

redirect.php:

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

que funcionou para mim bem.

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

Use JavaScript para isso. Você pode fazer:

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

Em PHP e atualizará a página do quadro pai.

0
jValdron

Tudo o que você precisa fazer para atualizar manualmente uma página é fornecer um link apontando para a mesma página

Assim: Atualizar a seleção

0
user20200

acho que você poderia ecoar a meta tag para fazer a atualização em intervalos regulares ... como

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