Newsgroup: it.comp.www.php
Titolo: Programma dei dadi

Ho fatto questo programma, perchè fa cosi schifo?
Form di input
<html>
<head>
</head>
<body>
<Form action="
http://localhost/prova.php
" method="get">
<table width="400" height="500">
<tr>
  <td>
    <p>Dado da 4</p>
  </td>
  <td>
    <select name="quanti_d4">
    <option value="1">1 dado </option>
    <option value="2">2 dadi </option>
    <option value="3">3 dadi </option>
    <option value="4">4 dadi </option>
    <option value="5">5 dadi </option>
    <option value="6">6 dadi </option>
    <option value="7">7 dadi </option>
    <option value="8">8 dadi </option>
    <option value="9">9 dadi </option>
    <option value="10">10 dadi </option>
    </select>
  </td>
  <td>
  <input type=radio name="dado4" value="1">-Seleziona questo dado!
  </td>
</tr>
<!-- dado da 6 -->
<tr>
  <td>
    <p>Dado da 6</p>
  </td>
  <td>
    <select name="quanti_d6">
    <option value="1">1 dado </option>
    <option value="2">2 dadi </option>
    <option value="3">3 dadi </option>
    <option value="4">4 dadi </option>
    <option value="5">5 dadi </option>
    <option value="6">6 dadi </option>
    <option value="7">7 dadi </option>
    <option value="8">8 dadi </option>
    <option value="9">9 dadi </option>
    <option value="10">10 dadi </option>
    </select>
  </td>
  <td>
  <input type=radio name="dado6" value="1">-Seleziona questo dado!
  </td>
</tr>
<!-- dado da 10 -->
<tr>
  <td>
    <p>Dado da 10</p>
  </td>
  <td>
    <select name="quanti_d10">
    <option value="1">1 dado </option>
    <option value="2">2 dadi </option>
    <option value="3">3 dadi </option>
    <option value="4">4 dadi </option>
    <option value="5">5 dadi </option>
    <option value="6">6 dadi </option>
    <option value="7">7 dadi </option>
    <option value="8">8 dadi </option>
    <option value="9">9 dadi </option>
    <option value="10">10 dadi </option>
    </select>
  </td>
  <td>
  <input type=radio name="dado10" value="1">-Seleziona questo dado!
  </td>
</tr>
<!-- dado da 12 -->
<tr>
  <td>
    <p>Dado da 12</p>
  </td>
  <td>
    <select name="quanti_d12">
    <option value="1">1 dado </option>
    <option value="2">2 dadi </option>
    <option value="3">3 dadi </option>
    <option value="4">4 dadi </option>
    <option value="5">5 dadi </option>
    <option value="6">6 dadi </option>
    <option value="7">7 dadi </option>
    <option value="8">8 dadi </option>
    <option value="9">9 dadi </option>
    <option value="10">10 dadi </option>
    </select>
  </td>
  <td>
  <input type=radio name="dado12" value="1">-Seleziona questo dado!
  </td>
</tr>
<!-- dado da 20 -->
<tr>
  <td>
    <p>Dado da 20</p>
  </td>
  <td>
    <select name="quanti_d20">
    <option value="1">1 dado </option>
    <option value="2">2 dadi </option>
    <option value="3">3 dadi </option>
    <option value="4">4 dadi </option>
    <option value="5">5 dadi </option>
    <option value="6">6 dadi </option>
    <option value="7">7 dadi </option>
    <option value="8">8 dadi </option>
    <option value="9">9 dadi </option>
    <option value="10">10 dadi </option>
    </select>
  </td>
  <td>
  <input type=radio name="dado20" value="1">-Seleziona questo dado!
  </td>
</tr>
</table>
<p>
<input type="submit" name="select" value="Tira i dadi!"><input type=reset
value="Annulla">
</p>
</body>
</html>
Pagina per il calcolo
<html>
<head>
</head>
<body>
<p>
<?php
  mt_srand((double)microtime()*1000000);
  if ($_GET['dado4'] >= 1)
      {
      echo "<br>Dado a quattro Facce <br>";
      for ( $i=1; $_GET['quanti_d4'] >= $i; $i++)
      {
          echo "Valore $i ° dado --> ";
        echo mt_rand(1,4), "<br>";
      }
      }
  elseif ($_GET['dado6'] >= 1)
      {
      echo "<br>Dado a sei Facce <br>";
      for ( $i=1; $_GET['quanti_d6'] >= $i; $i++)
      {
          echo "Valore $i ° dado --> ";
        echo mt_rand(1,6), "<br>";
      }
      }
  elseif ($_GET['dado10'] >= 1)
      {
      echo "<br>Dado a dieci Facce <br>";
      for ( $i=1; $_GET['quanti_d10'] >= $i; $i++)
      {
          echo "Valore $i ° dado --> ";
        echo mt_rand(1,10), "<br>";
      }
      }
  elseif ($_GET['dado12'] >= 1)
      {
      echo "<br>Dado a dodici Facce <br>";
      for ( $i=1; $_GET['quanti_d12'] >= $i; $i++)
      {
          echo "Valore $i ° dado --> ";
        echo mt_rand(1,12), "<br>";
      }
      }
   else
    {
      echo "<br>Dado a venti Facce <br>";
      for ( $i=1; $_GET['quanti_d20'] >= $i; $i++)
      {
          echo "Valore $i ° dado --> ";
        echo mt_rand(1,20), "<br>";
      }
    }
?>
</p>
</body>
</html>
Se provate, potete notare che dice che ci sono variabili non assegnate, come
devo fare a migliorare sto coso?
Come devo fare se voglio far tirare più di un dado alla volta?
Ciao e grazie

 Come devo fare se voglio far tirare più di un dado alla volta?
O fai 6 select (una per ogni tipo di dado) con valori da 0 a 20 (piu`
semplice ma occupa spazio), oppure ti fai una funzione di parsing che
capisca robe tipo "2d4+1d6+5" (piu` complicato, ma te la cavo con un
text field).
Bye.