2011-12-02 2 views
8

Есть ли что-нибудь в PHP, что эквивалентно ручному нажатию кнопки перезагрузки страницы F5? Мой php-скрипт находится в кадре и не является родительским скриптом, но ему нужно обновить всю страницу, а не только ее фрейм.Окно обновления PHP? эквивалентно перезагрузке страницы F5?

ответ

6

С PHP вы просто можете обрабатывать серверные вещи. Что вы можете сделать, это напечатать это в вашем iframe:

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

безупречный !! Только то, что мне нужно! Спасибо! – user840930

+1

. , , еще один вопрос. Я сделал: echo ""; который перезагружает всю страницу, которая мне только нужна, но фрейм, в котором находится исполняемый скрипт php, не обновляется. И я не могу назвать другой parent.window.location.reload или даже onload = \ "window.location = '$ page' \" что я могу сделать? – user840930

+0

Не уверен, что у меня есть, но проверили ли вы свой фрейм src? Проверьте, правильно ли загружается parent.window ... – gustavotkg

4

PHP не может заставить клиента ничего делать. Он не может обновить страницу, не говоря уже об обновлении родителя кадра.

EDIT: Вы можете, конечно, сделать PHP писать JavaScript, но это не PHP, это на самом деле JavaScript, и он не сработает, если JavaScript отключен.

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

Используйте JavaScript для этого. Вы можете:

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

В PHP, и он обновит страницу кадра родителя.

0

думаю, вы могли бы повторить мета-тег, чтобы сделать обновление через регулярные промежутки времени ... как

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

На самом деле это возможно:

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

И перезагружает ту же страницу.

+0

Этот должен быть отмечен как одобренный, потому что он делает именно то, что предназначено для php (без javascript или вставки в HTML). –

+0

@Ryuji Это НЕ решает исходный вопрос. Как это может привести к перезагрузке родительского документа? –

+1

@MikeBrant, потому что это именно то, что он делает. Он заказывает php для перезагрузки одной и той же страницы. – NewProger

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

Если у вас есть какие-либо текста перед

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

вы будете иметь проблемы, потому что должны быть отправлены до любой другой текст отправляется на страницу.

Попробуйте использовать этот код вместо

Просто помните, что этот код будет создавать и бесконечный цикл, так что вам, возможно, потребуется внести некоторые условные изменения.

+0

это ответ – waas1919

+0

Работал для меня !!! – Jasmeen

1

с помощью php вы можете использовать два перенаправления. Он работает так же, как и в некоторых проблемах.

вы можете использовать страницу redirect.php и разместить свой последний URL-адрес с помощью метода GET (например). , то в redirect.php вы можете изменить заголовок в местоположение, которое вы отправили ему методом GET.

как это: вашей страницы:

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

redirect.php:

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

, что работал для меня хорошо.

0

Все, что вам нужно сделать, чтобы вручную обновить страницу, чтобы предоставить ссылку, указывающую на ту же страницу

Как это: Обновить выбор

-1

Добавление Ниже в заголовке страницы работает для меня:

<?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{} 
?> 
Смежные вопросы