Ankündigung

Einklappen
Keine Ankündigung bisher.

Lotto System - Zahl darf nur einmal vorkommen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Lotto System - Zahl darf nur einmal vorkommen

    Hallo Leute,
    ich soll ein kleines Lottocheck System programmieren.
    Habe das auch soweit fertig bis auf eine kleine Sache.
    Die Zahlen (in feld 1-6) dürfen jeweils nur einmal auftauchen.
    Wie ist der algorytmus dafür oder kann jmd mein Script vervollständigen.

    Hier ein Auszug:

    PHP-Code:
    for($i 1$i 7$i++)
    {
        
    $zahl $_POST["zahl$i"];
        if(!empty(
    $i))
        {
            if(
    $zahl 49 && $zahl >= 1)
            {
                echo 
    '<div class="alert alert-success" role="alert">Zahl '.$i.'. ist korrekt!</div>';
            }else{
                echo
    '<div class="alert alert-danger" role="alert">';
                echo 
    '<strong>Fehler  (Zahl '.$i.'):</strong> ';
                if(empty(
    $zahl))
                {
                    echo 
    'Es wurde keine Zahl eingegeben<br>';
                }
                echo
    'Die Zahl m&uuml;ssen jeweils zwischen 1 und 49 liegen.</div>';

            }
        }else{
            echo 
    '<hr>Die Zahl ist <strong>nicht</strong> korrekt!';
            echo 
    '<p>Jede Zahl darf nur einmal vorkommen</p>';
        }
        

    Die Felder heißen immer zahl1, zahl2...zahl6.

    Ich danke schonmal für euere Mithilfe!

  • #2
    zB mit count() und array_unique() ...so spontan jetzt.

    Und - nicht so machen:

    PHP-Code:
    $_POST["zahl$i"]; 
    Schau mal hier: http://php.net/manual/de/faq.html.php#faq.html.arrays

    Kommentar


    • #3
      PHP-Code:
      $zahlen = [];
      for(
      $i 1$i <= 6$i++){
        
      $zahl = isset($_POST["zahl$i"])?int($_POST["zahl$i"]):0;
        if(
      $zahl || $zahl 49)
          
      //Error, zahl nicht zwischen 1 und 49
        
      if(in_array($zahl$zahlen))
          
      //Zahl $zahl doppelt gewählt
        
      $zahlen[] = $zahl;

      Kommentar

      Lädt...
      X