Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> opóźnienei wykonywania części skryptu
habor
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 28.11.2011

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


Witam.

Mam problem z opóźnieniem wykonywania skryptu

kod wygląda następująco:

  1. <?php
  2. echo 'To wyswietlone bedzie od razu';
  3. sleep(5);
  4. echo '<br><br>A to po 5 sekundach';
  5. ?>


skrypt jest opóźniony w całości zamiast częściowo.
Jak to rozwiązać?

Pozdrawiam
Go to the top of the page
+Quote Post
nospor
post
Post #2





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




No niestety w wiekszosci przypadków taki mechanizm nie będzie działać. Może opisz problem dokładniej, co chcesz tym osiągnąć, to może uda się znaleźć inne rozwiązanie
Go to the top of the page
+Quote Post
Uriziel01
post
Post #3





Grupa: Zarejestrowani
Postów: 307
Pomógł: 37
Dołączył: 9.11.2010
Skąd: Zielona Góra

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


Tak jak napisał mój poprzednik kod PHP musi zostac wykonany w całosci przed wyświetleniem wyniku, mozna to obchodzić przez funkcje buforu wyjścia 'ob_' ale i tak zadziała to tylko w niewielu przypadkach . Znacznie prościej będzie jeżeli utworzysz drugi plik .php który wyświetlał będzie ten drugi napis. A w obecnym pliku PHP dodasz skrypt JavaScript uzywający AJAX'a (Tutorial: http://ajaxin.pl/2007/01/17/tutorial-hello-world/) i opuźnisz jego wykonanie o te 5 sekund przed funckje w JavaScript setTimeout(. To tak w telegraficznym skrócie.


P.S-Jeżeli wykorzystanie AJAX'a okaże się dla Ciebie zbyt trudne, polecam użycie gotowej już funkcji z biblioteki JQuery, w internecie znajdziesz na ten temat dziesiątki tutoriali.

Paweł.

Ten post edytował Uriziel01 28.11.2011, 10:44:59
Go to the top of the page
+Quote Post
habor
post
Post #4





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 28.11.2011

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


opóźnienie jest mi potrzebne w celu wymuszenia na użytkowniku przeczytania informacji przed kliknięciem przycisku "dalej". Najlepiej jak ten przycisk "dalej" pojawił by się po upływie kilku sekund.
Go to the top of the page
+Quote Post
Uriziel01
post
Post #5





Grupa: Zarejestrowani
Postów: 307
Pomógł: 37
Dołączył: 9.11.2010
Skąd: Zielona Góra

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


No to nie lepiej zrobić jakiś checkbox mówiący 'Tak przeczytałem ten niezwykle ważny regulamin' i dopiero po jego zaznaczeniu wyświetlać przycisk dalej ? Jeżeli ci to nie odpowiada, to poprostu użyj moich wskazówek z postu powyżej (IMG:style_emoticons/default/smile.gif)

Ten post edytował Uriziel01 28.11.2011, 11:27:39
Go to the top of the page
+Quote Post
habor
post
Post #6





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 28.11.2011

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


Zrobiłem za pomocą javascript.

Na starcie przyciska jest ustawiony na disabled, po upływie 5s przycisk aktywuje się i ustawia się na nim focus.
Fajne rozwiązanie.

  1. <script type='text/javascript'>
  2. function Opoznienie()
  3. {
  4. document.getElementById('tak').disabled=false;
  5. }
  6. setTimeout('Opoznienie()',5000);
  7. document.form1.tak.focus();


Ten post edytował habor 28.11.2011, 19:17:49
Go to the top of the page
+Quote Post
Uriziel01
post
Post #7





Grupa: Zarejestrowani
Postów: 307
Pomógł: 37
Dołączył: 9.11.2010
Skąd: Zielona Góra

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


Super że jednak sobie poradziłeś z problemem. Tylko czy wiesz że tak wykonane zabezpieczenie (treść jest już w przeglądarce ale jest ukryta) jest banalnie proste do kliknięcia, jest to kwestia dwoch kliknięć myszy. Mimo wszystko, jeżeli bezpieczeństwo nie jest tam jakieś szczególnie ważne to zostaw to tak jak jest teraz (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
habor
post
Post #8





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 28.11.2011

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


Ekrany są dotykowe, użytkownik raczej nie ma możliwości kliknięcia czegokolwiek poza moimi przyciskami.

Dodatkowo ma takie pytanie, jak napisać skrypt który na samym starcie otwiera przeglądarkę OPERA w fullscreen?
Wszystkie które znalazłem na necie robią to ale tylko w IE.
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: 3.10.2025 - 21:32