Bernd: foreach anpassen

Beitrag lesen

Hallo,

ich lass ein select dynamisch füllen

<option value="">-- Bitte wählen --</option>
<?php 
$projektstatus = projektstatus($mysqli);
foreach($projektstatus as $array){ ?>
<option value="<?php echo $array['code'];?>"<?php echo ($status == $array['code'] ? "selected" : "");?>><?php echo $array['titel'];?></option>
<?php } ?>

Jetzt gibt es eine Variable

$erlaubeBestellung

diese hart startmäßig den Wert 1. Wenn während der Bestellung ein Fehler auftritt hat diese den Wert 2 damit wird der Bestellvorgang erst einmal abgebrochen. Ich möchte jetzt wenn Wert 2 vorhanden ist, einige Status nicht mit anzeigen. Ist dieses direkt möglich oder muss ich dafür eine neue Funktion schreiben und diese dann austauschen?

Die Funktion schaut so aus

    function projektstatus($mysqli) {
        $stmt = $mysqli->prepare("
                    SELECT id, code, titel, sort, farbe, s_class 
                    FROM projektstatus 
                    ORDER by sort ASC ");
        
        $stmt->execute();
        $stmt->bind_result($id, $code, $titel, $sort, $farbe, $s_class);
        $stmt->store_result();
        
        if($stmt->num_rows() >  0) {     
            while ($stmt->fetch()){
                $projektstatus[] = array( 
                    
                    'id'              => $id, 
                    'code'         => $code,
                    'titel'           => $titel,
                    'sort'          => $sort,
                    'farbe'       => $farbe,
                    's_class'     => $s_class
                );
            }
            return $projektstatus;
            }
    }