Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Procentowe obliczanie szans
Maveral
post
Post #1





Grupa: Zarejestrowani
Postów: 45
Pomógł: 8
Dołączył: 30.07.2005

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


Witam. Mam nastepujący problem. Otóż chciałem stworzyć sobie małą symulację kaprysu hehehe Coś na zasadzie jak człowiek ma np. swój ulubiony trunek, ale czasem ma kaprys napić się czegoś innego. Stworzyłem sobie coś takiego:

  1. <?php
  2. if(empty($_POST[submit])) {
  3. echo 'Co pije Adam?<br>
  4. <form action="aaa2.php" method="post">
  5. <select name="trunek">
  6. <option>wino</option>
  7. <option>piwo</option>
  8. </select>
  9. <input type=submit name=submit value=Wyślij>
  10. </form>';
  11. }
  12.  
  13. else {
  14. $look=rand (1,4);
  15. $trunek=$_POST['trunek'];
  16. if ($look==1) {
  17. switch ($trunek) {
  18. case "wino":
  19. echo 'Ahhh dzis dla odmiany piwko :)';
  20. break;
  21. case "piwo":
  22. echo 'Ahhh dziś dla odmiany winko (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ';
  23. }
  24. }
  25. elseif ($look>&& $look<4) {
  26. switch ($trunek) {
  27. case "wino":
  28. echo 'Standardowo winko :)';
  29. break;
  30. case "piwo":
  31. echo 'Super - jak zawsze wypije sobie piwko (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) ';
  32. break;
  33. }
  34. }
  35. elseif ($look==4) {
  36. switch ($trunek) {
  37. case "wino":
  38. echo 'A doleje troche piwa do wina :)';
  39. break;
  40. case "piwo":
  41. echo 'Doleje sobie troszkę wina do piwa (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ';
  42. break;
  43. }
  44. }
  45.  
  46. }
  47. ?>


Niby to działa (tutaj można zobaczyć), ale:

1. Nie wiem czy nie można by tego kodu jeszcze uprościć. Switch jest wygodny, gdyby doszło więcej opcji w formularzu, ale może jednak da się prościej?
2. Może da się jakoś inaczej (czyt. prościej) ustawić procent szans na wylosowanie jednego z trunków? Teraz robię to przez rand(), który losuje liczby z przedziału 1-4. Wylosowanie 2 lub 3 powoduje wylosowanie zaznaczonego w formularzu trunku (czyli 50% szansy).
3. Jak określić zbiór liczb w if? Mam to zrobione jako "$look>1 && $look<4" czyli przedział (2,3), ale może da się jakoś prościej?

Z góry dzięki za odp (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował Maveral 19.06.2007, 14:34:28
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: 23.08.2025 - 20:12