Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Zatrzymanie pętli przyciskiem?
mix091
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 5.12.2015

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


Dzieńdobry (IMG:style_emoticons/default/smile.gif)

Mam na swojej stronie dwa guziki: uruchom i zatrzymaj. Chciałem zrobić tak, aby po wciśnięciu guzika uruchom zaczęła wykonywać się pętla while, której warunkiem zatrzymania miało by być wciśnięcie klawisza zatrzymaj. Chciałem to zrobić na takiej zasadzie, że po wcisnieciu buttona zatrzymaj ustawi się w nim zmienna logiczna $stop na true i pętla while sie zatrzyma jeżeli $stop jest inne niż false. Oto kod którym próbowałem to zrobić

  1. if (isset($_POST['zatrzymaj']))
  2. {
  3. $stop = true;
  4. }
  5. if (isset($_POST['uruchom']))
  6. {
  7. $dtemp = $_POST['docelowaTemp'];
  8. while ($stop == false)
  9. {
  10. // Kod petli
  11. }
  12. }


Ale mi to nie działa i coś mi się wydaje, że takie coś nie ma prawa działać. Jak wykonać takie zatrzymanie pętli?
Pomocy (IMG:style_emoticons/default/sad.gif)

Ten post edytował mix091 5.12.2015, 23:46:27
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Dejmien_85
post
Post #2





Grupa: Zarejestrowani
Postów: 251
Pomógł: 23
Dołączył: 23.04.2013

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


Jedyne rozwiązanie to websockety, tj. nawiązanie stałego połączenia - wtedy przeglądarka utrzymuje stałe połączenie i na bieżąco może przekazywać różne dane od klienta (w tym wypadku od przeglądarki). Wtedy musiałbyś ustawić jakąś domyślną warrtość dla warunku w pętli, a nastepnie sprawdzać, czy nowa wartość (która nadpisze domyślną) nie została dosłana.

W tej chwili operujesz na błędnym założeniu, że PHP odpala tylko jeden proces, który działa. Wydaje się Tobie, że gdy raz go odpalisz wyślesz później drugi request, to że wrócisz do wcześniej dopalonego skryptu (proesu). Tak nie jest, przy każdym requeście odpalasz nowy proces, przy każdym Twoim requeście otwiera się nowy program (proces)

Ten post edytował Dejmien_85 6.12.2015, 12:44:57
Go to the top of the page
+Quote Post

Posty w temacie


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: 8.08.2026 - 04:20