Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Odświerzenie strony w php
Forum PHP.pl > Forum > Przedszkole
3502274
Witam,

mam kod który po swoim wykonaniu odwołuje do index.php i nie chcę zmieniać paru katalogów, by dodać go też na innej stronie, więc chciałbym by po wykonaniu skrypt po prostu odświeżał stronę, zamiast przeskakiwać do index.php

Wygląda to prosto tak:

Kod
else {header ('Location: index.php'); exit;}


Próbowałem przez to co zamieszczone na stronie:
- http://www.desilva.biz/php/phprefresh.html

lecz wtedy całkiem zmienia mi domenę...
webdice
  1. <?php
  2. header ('location: ' . basename ($_SERVER['REQUEST_URI']));
  3. ?>


P.S. Przenoszę na Przedszkole.
3502274
Niestety teraz po wykonaniu skryptu wyskakuje:

Cytat
Firefox wykrył, że serwer przekierowuje żądanie tego zasobu w sposób uniemożliwiający jego ukończenie.
webdice
To jest oczywiste, musisz sobie napisać odpowiedni warunek, który nie będzie spełniony po załadowaniu strony.
piotrekkr
daj sobie np:
  1. <?php
  2. if(isset($_GET['refreshed']) && $_GET['refreshed'] == 1){
  3. //zrob costam juz po odświerzeniu;
  4. }else{
  5. header("Location: index.php?refreshed=1"); //odświerz
  6. }
  7. ?>

możesz też zmienną w sesję włożyć że już nastąpiło odświerzenie. Jeśli nie dasz odpowiedniego warunku to będzie się ciagle strona odświerzać.
3502274
Zrobiłem to trochę inaczej..

Kod
$gdzie=$_SERVER['HTTP_REFERER'];
header ('Location: '.$gdzie);
exit;


Dzięki za wszelką pomoc...
nexis
Cytat(webdicepl @ 29.06.2008, 15:01:34 ) *


Nic bardziej mylnego. Użycie header" title="Zobacz w manualu PHP" target="_manual mówi tylko tyle, że do przeglądarki zostanie wysłany nagłówek zawierający m.in. kod statusu HTTP/1.1 302 (lub HTTP/1.1 301 Moved Permanently) oraz location, który zawiera adres strony, na którą chcemy przekierować użytkownika.

Przeglądarka zazwyczaj przekieruje nas właśnie pod wspomniany adres i dalsza część kodu po header" title="Zobacz w manualu PHP" target="_manual jest dla nas niewidoczna. Jednak wystarczy użyć najprostszego sniffera i przekonamy się, że otrzymaliśmy jednak cały kod strony.

Może podam przykład:

  1. <?php
  2.  
  3. header('location:http://www.google.pl/');
  4. echo 'Tajne hasło';
  5.  
  6. ?>


Jeśli nie użyjemy exit" title="Zobacz w manualu PHP" target="_manual użytkownik będzie w stanie odczytać napis Tajne hasło.

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.