Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyświetlenie tekstu i przekierowanie po kilku sekundach
michal_s
post
Post #1





Grupa: Zarejestrowani
Postów: 148
Pomógł: 1
Dołączył: 11.12.2010

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


Witam. Chcę zrobić aby skrypt po wykonaniu zapytani w bazie wyświetlił komunikat ze wszystko zostało zakończone powodzeniem i po 5 sekundach przekierował na inną stronę. Próbowałem zrobić coś takiego, ale nie działą tak jak powinno. Kombinowalem na wiele sposobów ale nigdy tekst o poprawności nie byl wyswietlany przez te 5 sekund. co jest źle?

  1. if ( mysql_query($zapytanie) ) {
  2. echo 'dodanie się udało!';
  3. sleep(5);
  4.  
  5. ?>
  6.  
  7. <script> window.location = "http://strona.html" </script>
  8. <?php }

chciałem przekierowanie zrobic headerem ale sa jakies zmienne przekazywane i generuje bledy.
Go to the top of the page
+Quote Post
vermis
post
Post #2





Grupa: Zarejestrowani
Postów: 279
Pomógł: 56
Dołączył: 3.06.2010
Skąd: Tarnowskie Góry

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


Użyj funkcji setTimeout() do opóźnienia w JS.
http://www.w3schools.com/js/js_timing.asp
Go to the top of the page
+Quote Post
michal_s
post
Post #3





Grupa: Zarejestrowani
Postów: 148
Pomógł: 1
Dołączył: 11.12.2010

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


Ok. Naskrobałem coś w JS i działa jak chciałem. Dzieki za podpowiedź. A ma ktoś pomysł jak to zrobi bez JS?
Go to the top of the page
+Quote Post
cycofiasz
post
Post #4





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

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


Wywal to sleep i daj w head takie coś:

  1. <meta http-equiv="refresh" content="5;url=plik.php">


lub w php przed jakimkolwiek echo itp:

  1. header("refresh:5;url=plik.php");
Go to the top of the page
+Quote Post
michal_s
post
Post #5





Grupa: Zarejestrowani
Postów: 148
Pomógł: 1
Dołączył: 11.12.2010

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


No jak pięknie działa w php. dzięki

Mam jeszcze jedno pytanie. Przesyłam z formularza dane do mojego skryptu php. On sprawdza ich poprawność i jeśli są dobrze wpisane wykonuje je. Jak zrobić że jeśli odnajdzie błąd poprzez jednego z "if'ów' pokaże komunikat i cofnie do strony wpisywania danych po np. 5 sekundach i tutaj ważne żeby po prostu jej nie odświeżył ale aby dane w formularzu zostały takie same jak przed wysłaniem. da sie to jakoś zrobić? Mam nadzieje że w miarę jasno to opisałem
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #6





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Pokaż kod, wróżka ma wolne (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
michal_s
post
Post #7





Grupa: Zarejestrowani
Postów: 148
Pomógł: 1
Dołączył: 11.12.2010

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


  1. if (empty($plik) and !empty($adres))
  2. {
  3.  
  4. $przecinki = substr_count( $tagi, ',' );
  5.  
  6. if (url_exists($adres)==1)
  7. {
  8.  
  9.  
  10. if ($przecinki > 2)
  11. {
  12.  
  13. if(!empty($adres) and !empty($nazwa) and !empty($tagi) and !empty($autor))
  14. {
  15.  
  16.  
  17.  
  18. $data=date('Y-m-d');
  19. $zapytanie = "INSERT ...
  20.  
  21. mysql_query($zapytanie);
  22. $tekst = 'Dodawanie zakończone powodzeniem!!!';
  23.  
  24. require("plik.php"); //plik z ogolnym zarysem strony
  25. header("refresh:5;url=dodawanie.php");
  26. wszystko($tekst); // funkcja z pliku dolaczonego. zmienna to tekst do wyswietlenia na stronie
  27.  
  28. }
  29.  
  30. else {
  31. echo 'Nie wszystkie dane zostały wpisane poprawnie';
  32. }
  33. }
  34. else
  35. {
  36. echo 'Musisz podać minimum 4 tagi!!!';
  37. }
  38. }
  39.  
  40. else {
  41. echo 'Lepiej sprawdź jeszcze raz adres do obrazka !!!';
  42. }
  43.  
  44. }



Wiem ze ogólnie pewnie można to napisał 100* łądniej i czytelniej ale działa hehe
Rozchodzi się o to by te else były wyswietlane podobnie jak komunikat z zakączenie pomyślnego i by wracało do formularza z zachowaniem danych które już tam są. Chyba że standardowo na stronach robie się to jeszcze inaczej... Nie ogarniam zbytnio tego algorytmu jaki się stosuje. np. z podświetlaniem błędnie wpisanego inputa..

Ten post edytował michal_s 14.01.2011, 13:49:23
Go to the top of the page
+Quote Post
ciekawskiii
post
Post #8





Grupa: Zarejestrowani
Postów: 467
Pomógł: 39
Dołączył: 7.11.2010
Skąd: Raz tu, raz tam

Ostrzeżenie: (30%)
XX---


Zapisuj dane w sesji a pozniej z sesji je wyswietlaj
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.08.2025 - 09:00