TS: PHP Funktion zweimal verwenden?

Beitrag lesen

Hello,

function firmen($mysqli) {

$stmt = $mysqli->prepare("SELECT id, code, firma, abteilung, sort, ab_an, signup_an, intern FROM firmen WHERE signup_an = 1 AND intern = 0  ORDER by sort ASC");

$stmt->execute();
$stmt->bind_result($id, $code, $firma, $abteilung, $sort, $ab_an, $signup_an, $intern);
$stmt->store_result();
        
if($stmt->num_rows() >  0) {

    while ($stmt->fetch()){
        
          $firmen[] = array( 
            'id'          => $id, 
            'code'        => $code, 
            'firma'       => $firma,
            'abteilung'   => $abteilung,
            'sort'        => $sort,
            'ab_an'       => $ab_an,
            'signup_an'   => $signup_an,
            'intern'      => $intern );
        }
        return $firmen;
    }
}

Ich würde gerne diese Funktion an zwei Stellen verwenden. Soweit kein Problem. Allerdings sollte an der zweiten Stelle, alle Firmen ausgelesen werden, das AND intern = 0 ist demzufolge störend.

Habe ich die Möglichkeit dieses mit einer Funktion zu machen oder muss ich diese kopieren und unter einem anderen Namen abspeichern?

Du könntest auch die Statements außerhalb der Abfrage vorbereiten und dann bitte auch mit einem sinnvollen Namen versehen und als zusätzlichen Parameter mitgeben.


$stmt_interne_firmen = $mysqli->prepare("SELECT id, code, firma, abteilung, sort, ab_an, signup_an, intern FROM firmen WHERE signup_an = 1 AND intern = 0  ORDER by sort ASC");

$stmt_alle_firmen = $mysqli->prepare("SELECT id, code, firma, abteilung, sort, ab_an, signup_an, intern FROM firmen WHERE signup_an = 1 ORDER by sort ASC");

function firmen($mysqli, $stmt) 
{

### ...

} 

Liebe Grüße
Tom S.

--
Es gibt nichts Gutes, außer man tut es
Andersdenkende waren noch nie beliebt, aber meistens diejenigen, die die Freiheit vorangebracht haben.