Hallo,
Doch, aber nur teilweise. Nur die Werte übergeben und keine halben Statements. Die aufrufende Stelle muss keine Ahnung von MySQL-Syntax haben.
ok, ich habe es nun so umgesetzt, es funktioniert. Hoffentlich habe ich euch richtig verstanden:
Der Aufruf meiner Funktion mit Parameter
$admin_Benefits = admin_Benefits($mysqli, "1");
und ohne Parameter
$admin_Benefits = admin_Benefits($mysqli);
Die Funktion selber dann so:
function admin_Benefits($mysqli, $id=false) {
if ($id) {
$stmt = $mysqli->prepare("SELECT b_id, b_projekt, b_titel, b_bild, b_video, b_beschreibung, b_anzahl, b_preis, b_status, p_titel FROM benefits LEFT JOIN projekte ON projekte.p_id = benefits.b_projekt WHERE b_projekt = ? ");
$stmt->bind_param("s", $id);
} else {
$stmt = $mysqli->prepare("SELECT b_id, b_projekt, b_titel, b_bild, b_video, b_beschreibung, b_anzahl, b_preis, b_status, p_titel FROM benefits LEFT JOIN projekte ON projekte.p_id = benefits.b_projekt ");
}
$stmt->execute();