<?php function safv() { srand((double)microtime()*1000000); for ($i=0; $i<6; $i++) { $lzahl[$i]=0; } $i=0; $j=0; while ($i<6) { $raus=0; $zzahl=rand() % 45 + 1; for ($j=0; $j<6; $j++) { if ($lzahl[$j]==$zzahl) { $raus=1; } } if ($raus==0) { $lzahl[$i]=$zzahl; $i++; } } sort($lzahl); return $lzahl; } ?>Diese Funktion wird in der Datei lotto.inc gespeichert, sodass sie durch Einbinden in den PHP-Code (mittels der Funktion include() zur Verfügung steht.
<?php include("lotto.inc"); ?> <html> <body bgcolor="#ffffff"> <h3>6 aus 45</h3> <?php if (!$tip) { ?> <form name="eingabe" method="post" action="lotto5.php"> <table border="0"> <?php for ($i=0;$i<15;$i++) { print ("<tr>"); for ($j=1;$j<=45;$j+=15) { $n = $i+$j; print ("<td><input type='checkbox' name='cb[$n]')>"); print($n . "</td>"); } print ("</tr>\n"); } ?> </table> <input type="submit" value="zahlen ;-)" name="tip"> </form> <?php } if ($tip) { print ("Die Ziehung erbrachte folgende Zahlen: <br><b>"); $erg = safv(); for ($i=0;$i<6;$i++) { print ($erg[$i] . " "); } print("</b><br>Dein Tipp:<br><b>"); $counter = 0; for ($i=1;$i<=45;$i++) { if ($cb[$i]) { print ($i . " "); $counter++; } } if ($counter>6) die(" Zu viele Tipps - schummeln gilt nicht!!!"); if ($counter<6) die(" Zu wenige Tipps - wird nicht bewertet!!!"); if ($counter=6) { $counter=0; for ($i=0;$i<6;$i++) { if ($cb[$erg[$i]]) { $counter=$counter + 1; } } print ("<br><b>" . $counter . " Treffer...</b>"); } } ?> </body> </html>Beachte, dass die Namen für die einzelnen Checkboxen innerhalb der Schleifen als Einträge in den Array $cb festgelegt werden. Dieser Array wird beim Senden des WebFormulares übergeben. Beim Auswerten wird schließlich getestet, ob die Checkboxen gewählt wurden, deren Indizes den gezogenen Zahlen entsprechen... Jedenfalls wird geprüft, ob genau 6 Zahlen getippt wurden - andernfalls bricht das Programm mit einer entsprechenden Meldung ab (die(...)).