Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> jak usunąć zmienna superglobalna typu POST ?
swmikolaj21
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 11.05.2005

Ostrzeżenie: (0%)
-----


Witam!

Chcialbym po zapisaniu do bazy danych usunac zmienna post z formularza, tak by np po odswiezeniu strony nie mozna bylo mozna bylo jeszcze raz zapisac tych samych danych...

unset na koncu nie pomaga bo jeszcze raz pobiera , usunac z tempa-ale jak??

Szukalem troche ale nie znalazlem odpowiedzi.....

Pozdrawiam i czekam na jakies wskazowki

Maciek
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




Sęk w tym, że odświerzenie powoduje powtórne wyslanie formularza. Usuwanie zmiennej tu nic nie da, gdyż jest ona na nowo wysyłana (tworzona). Musisz porobić jakieś zabezpieczenia, przed powtórnym wysyłaniem formularza
Go to the top of the page
+Quote Post
swmikolaj21
post
Post #3





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 11.05.2005

Ostrzeżenie: (0%)
-----


hmmm... no tak...ale jak?? (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
crash
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

Ostrzeżenie: (0%)
-----


Na upartego możesz przeładować stronę, za pomocą header" title="Zobacz w manualu PHP" target="_manual[b](Location: '.$_SERVER['PHP_SELF']);[b]
Go to the top of the page
+Quote Post
swmikolaj21
post
Post #5





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 11.05.2005

Ostrzeżenie: (0%)
-----


a to przeładowanie spowoduje ze.... (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? no bo na chlopski rozum to jeszcze raz pobierze z formularza....
Go to the top of the page
+Quote Post
revyag
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Można odświeżyć stronę po stronie usera przy pomocy javascript. Wtedy dane nie zostanę ponownie wysłane.
Kod
<script type="text/javascript">window.location=document.URL;</script>
Go to the top of the page
+Quote Post
vala
post
Post #7





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 12.01.2005

Ostrzeżenie: (0%)
-----


a jak ktos ma wylaczone js to nie za bardzo to zadziala:)
Go to the top of the page
+Quote Post
revyag
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

Ostrzeżenie: (0%)
-----


Może inaczej skonstruuj wysyłanie formularza, zrób to bardzo user-friendly. Po naciśnięciu submita pokaże się komunikat że dane zostały wysłane i link do strony z formularzem. Trzeba liczyć na to że użytkownik postąpi w normalny sposób i kliknie link, a nie będzie odświeżał stronę.
Jeśli to nie wystarcza to trzeba usera przekierować na inną stronę i tyle.
Go to the top of the page
+Quote Post
Zajec
post
Post #9





Grupa: Zarejestrowani
Postów: 1 086
Pomógł: 8
Dołączył: 10.12.2003

Ostrzeżenie: (0%)
-----


Zrób dodatkowe pole input type="hidden" z value=<php echo time();?>

Potem sprawdzasz czy istnieje wpis w bazie z
time = $_POST['time']
i
tresc = $_POST['tresc'] (przykładowo)

Jeżeli nie istnieje to dodajesz.
Go to the top of the page
+Quote Post
kszychu
post
Post #10





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Przekierowuj za pomocą header("Location: ......."). Cofanie tego nie powoduje ponownego wysyłania formularza.
Go to the top of the page
+Quote Post
NoiseMc
post
Post #11





Grupa: Zarejestrowani
Postów: 398
Pomógł: 10
Dołączył: 24.11.2004
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Też uważam, że powinieneś przekierować stronę za pomocą header ( 'Location:....' ).

Ewentualnie możesz wyświetlić komunikat, że dane zostały zapisane i za chwile nastąpi przekierowanie, takie rozwiązanie zastosowane jest np w forum phpBB lub XOOPS CMS.

Ten post edytował NoiseMc 30.05.2005, 14:42:07
Go to the top of the page
+Quote Post
swmikolaj21
post
Post #12





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 11.05.2005

Ostrzeżenie: (0%)
-----


Oki ! Dzieki!!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.12.2025 - 21:31