PHP LOTTO Generator

CreativPur

Erfahrenes Mitglied
Hi,

ich habe mal wieder ein Problem...

Ich habe ein LOTTO Generator der zufällige Zahlen von 1-49 ausgibt.

Jetzt habe ich aber eine SQL-Tabelle, wo ich bestimmte Zahlen deaktivieren kann, und die aktiven Zahlen auch ausgeben kann.

PHP:
require_once("inc/config.inc.php");

$wochentag = Sa;
$sql = "SELECT * FROM lotto_zahlen WHERE aktiv = 1 AND wochentag = '$wochentag'";
foreach ($pdo->query($sql) as $lz_auswahl) {
echo  $lz_auswahl['lottozahl'].','   ;
};

Ergebnis.: 1,3,5,6,8,10,12,14,15,16,17,19,20,21,23,24,25,27,28,30,31,32,34,35,36,38,39,41,42,43,45,46,47,48,

Wie kann ich im folgendem Script anstatt Standard 1-49 die ausgegeben Zahlen übernehmen ?

PHP:
$pool = range(1,49);
$keys = array_rand($pool,6);

foreach ($keys as $k2) {
    $lotto_ausgabe .=  $pool[$k2] . "<br />";
}

echo $lotto_ausgabe;
 

Yaslaw

n/a
Moderator
Klassiker
Array aus der Schleife bilden
PHP:
$arr=array();
foreach ($pdo->query($sql) as $lz_auswahl) {
    $arr[] = $lz_auswahl['lottozahl'] ;
};
 

CreativPur

Erfahrenes Mitglied
Super vielen Dank..
Es scheint zu funktionieren.
Hier nochmals die Korrektur..

PHP:
$wochentag = Sa;
$sql = "SELECT * FROM lotto_zahlen WHERE aktiv = 1 AND wochentag = '$wochentag'";
foreach ($pdo->query($sql) as $lz_auswahl) {
echo  $lz_auswahl['lottozahl'].','   ;
};

$arr=array();
foreach ($pdo->query($sql) as $lz_auswahl) {
    $arr[] = $lz_auswahl['lottozahl'] ;
};

$keys = array_rand($arr,6);
foreach ($keys as $k2) {
    $lotto_ausgabe.=  $arr[$k2] . "<br />";
}

echo $lotto_ausgabe;

Ich hoffe, ich habe Sie richtig eingesetzt
 

m.scatello

Erfahrenes Mitglied
PHP:
<?php
   $wochentag = 'Sa';
 
   $sql = "SELECT 
             `lottozahl` 
            FROM 
              `lotto_zahlen` 
            WHERE 
              `aktiv` = 1 AND `wochentag` = '$wochentag' 
            order by rand() 
            limit 6";
 
   $data = array();
 
   foreach ($pdo->query($sql) as $lz_auswahl)
     data[] =  $lz_auswahl['lottozahl'];
   
   echo implode(", ", $data);
?>