Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jaka petle uzyc?
Forum PHP.pl > Forum > Przedszkole
Gumovvy
Witam.
Mam test w 1 pliku .html w drugim pliku .php mam wynik tego testu.
Chcial bym zeby mozna bylo zrobic ten test max 3 razy jak to moge zrobic ?wink.gif
potreb
  1. for($i=1;$i<4;$i) {
  2. //...
  3. }
  4.  
  5. for($i=1;$i<100;$i) {
  6. if($i == 3) break;
  7. }
Gumovvy
To sa te dwa pliki(html):

  1. <form action="asdasd.php" method="post">
  2. <table border="0">
  3. <tr bgcolor="black">
  4. <td width="100"><font color="white">Słowko polskie</font></td>
  5. <td width="30"><font color="white">Slowko angielskie</font></td>
  6. </tr>
  7. <tr>
  8. <td>Imię</td>
  9. <td><input type="text" maxlength="10" size="10" name="imie" value="0"></td>
  10. </td>
  11. </tr>
  12. <tr>
  13. <td>Szafa</td>
  14. <td><input type="text" maxlength="10" size="10" name="szafa" value="0"></td>
  15. </tr>
  16. </tr>
  17. <tr>
  18. <td>Dywan</td>
  19. <td><input type="text" maxlength="10" size="10" name="dywan" value="0"></td>
  20. </tr>
  21. <tr>
  22. <td>Lampa</td>
  23. <td><input type="text" maxlength="10" size="10" name="lampa" value="0"></td>
  24. </tr>
  25. <tr>
  26. <td>Kwiatek</td>
  27. <td><input type="text" maxlength="10" size="10" name="kwiatek" value="0"></td>
  28. </tr>
  29. <tr>
  30. <td colspan="2" align="center"><input type="submit" value="Sprawdz" >
  31.  
  32.  
  33. </td>
  34. </tr>
  35.  
  36.  
  37.  
  38. </form>
  39. </body>
  40. </html>

I php
  1. <?php
  2. $a=0;
  3. $b=0;
  4. $ok="Poprawnie";
  5. $powtorz="<a href=http://localhost/~przyklad/index11.html>Egzamin nie zaliczony. Wroc by powtorzyc.!</a>";
  6.  
  7. if ($imie == "name")
  8. {
  9. echo "Imie: $ok<br/>";
  10. $a++;
  11. }
  12. else {
  13. echo "Imie: Blad!<br/>";
  14. $b++;
  15. }
  16. if ($szafa == "wardrobe")
  17. {
  18. echo "Szafa: $ok<br/>";
  19.  
  20. $a++;
  21. }
  22. else {
  23. echo "Szafa: Blad!<br/>";
  24. $b++;
  25. }
  26. if ($dywan == "carpet")
  27. {
  28. echo "Dywan: $ok<br/>";
  29.  
  30. $a++;
  31. }
  32. else {
  33. echo "Dywan: Blad!<br/>";
  34. $b++;
  35. }
  36. if ($lampa == "lamp")
  37. {
  38. echo "Lampa: $ok<br/>";
  39.  
  40. $a++;
  41. }
  42. else {
  43. echo "Lampa: Blad!<br/>";
  44. $b++;
  45. }
  46. if ($kwiatek == "flower")
  47. {
  48. echo "Kwiatek: $ok<br/><br/>";
  49.  
  50. $a++;
  51. }
  52. else {
  53. echo "Kwiatek: Blad!<br/><br/>";
  54. $b++;
  55. }
  56.  
  57. Echo "Prawidlowe odpowiedzi $a <br/>";
  58. Echo "Liczba blednych odpowiedzi to: $b<br/><br/>";
  59. if ($a>4){
  60. Echo "Gratuluje egzamin zaliczony!";
  61. }
  62. else {
  63.  
  64. echo $powtorz;
  65.  
  66. }
  67.  
  68.  


W php mam odnosnik do pliku 1. Nie wiem jak zastosowac ta petle for Ktos pomoze smile.gif?
gorden
musisz jakoś u siebie zliczać dla danego ip/ciastka liczbe wypełnionych formularzy, w środku dajesz warunek oparty o tym, gdzie wykonujesz co tam chcesz jeżeli wypelnione testy>=3
Gumovvy
a nie da sie tego zrobic na petli for ?

lub zrobic cos z tych 2 plikow zeby petla zostala uzyta

POnawiam zapytanie
Chelo
Żadnej pętli tutaj nie użyjesz. Tak jak gorden napisał - użyj cookie, jednak ja radzę połączyć to z bazą danych, aby skutecznie zablokować 4-tą i każdą następną możliwość wykonania owego testu.
Gumovvy
a moze pomozecie mi wymyslec jakas inna petle ktora robi cos innego z tym ze musi byc to petla ?smile.gif
Chelo
Co masz na myśli pisząc "cos innego" i dlaczego akurat uparłeś się aby użyć pętli?. Napisałem wyżej co trzeba wykonać.
Gumovvy
ze do proektu musze miec petle niestety.... cos innego czyli co kolwiek nie wazne co zeby wspolgralo z tym programem
Chelo
Jeśli to tylko projekt, to zerknij na wpis użytkownika potreb.
Gumovvy
raczej zadanie domowe to jest
Chelo
Zmienne przesyłasz POST'em, ale nim nie odbierasz? pętlą foreach możesz przefiltrować wszystkie zmienne jeśli ci tak bardzo na tym zależy.
gorden
to zrób plik tekstowy typu $ip | $liczba_wejść
za każdym razem skanuj pętlą (najlepiej zadeklaruj za pomocą file + foreach) i updatuj go, jeśli dane ip wypełni formularz. jeśli explode | pokaże, że jest już 3, zablokuj dalsze działanie skryptu
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.