Hallo,
Ich hab zu Zeit ein kleines Problem mit PHP und MySQL. Ich möchte Prepared-Statements nutzen. Das Problem ist nun ich frage mit mehreren IFs ab, ob ich die entsprechende Post-Variable brauche. Die nutze ich für meine Suche. Wenn der die Post-Variable keinen veränderten Wert oder keinen Wert enthält wird sie nicht beachtet. Jetzt nutze ich bind_param und muss ja dort die Werte übergeben. Es kann aber sein das ich manchmal nur einen und manchmal bis zu vier übergeben muss. Nun steh ich auf dem Schlauch.
Hier einmal der Code:
if ((empty($_POST["VName"])) && (empty($_POST["NName"])) && (empty($_POST["BankID"])) && (empty($_POST["KundenID"]))) {
echo "Keine Eingabe.";
} else {
if (!empty($_POST["VName"])) {
$type .= "s";
$VName = $_POST["VName"];
$sql .= ' AND VName = "?"';
}
if (!empty($_POST["NName"])) {
$type .= "s";
$NName = $_POST["NName"];
$sql .= ' AND NName = "?"';
}
if (!empty($_POST["BankID"])) {
$type .= "s";
$BankID = $_POST["BankID"];
$sql .= ' AND BankID = "?"';
}
if (!empty($_POST["KundenID"])) {
$type .= "s";
$KundenID = $_POST["KundenID"];
$sql .= ' AND KundenID = "?"';
}
$stmt = $verbindung->prepare($sql);
$stmt->bind_param($typ, //Hier müssen die Werte übergeben werden
//Suche in Tabelle ausgeben
tabelle($sql);
}
Wie kriege ich das nun hin? Ich bin echt ratlos.
Ich hab zu Zeit ein kleines Problem mit PHP und MySQL. Ich möchte Prepared-Statements nutzen. Das Problem ist nun ich frage mit mehreren IFs ab, ob ich die entsprechende Post-Variable brauche. Die nutze ich für meine Suche. Wenn der die Post-Variable keinen veränderten Wert oder keinen Wert enthält wird sie nicht beachtet. Jetzt nutze ich bind_param und muss ja dort die Werte übergeben. Es kann aber sein das ich manchmal nur einen und manchmal bis zu vier übergeben muss. Nun steh ich auf dem Schlauch.
Hier einmal der Code:
if ((empty($_POST["VName"])) && (empty($_POST["NName"])) && (empty($_POST["BankID"])) && (empty($_POST["KundenID"]))) {
echo "Keine Eingabe.";
} else {
if (!empty($_POST["VName"])) {
$type .= "s";
$VName = $_POST["VName"];
$sql .= ' AND VName = "?"';
}
if (!empty($_POST["NName"])) {
$type .= "s";
$NName = $_POST["NName"];
$sql .= ' AND NName = "?"';
}
if (!empty($_POST["BankID"])) {
$type .= "s";
$BankID = $_POST["BankID"];
$sql .= ' AND BankID = "?"';
}
if (!empty($_POST["KundenID"])) {
$type .= "s";
$KundenID = $_POST["KundenID"];
$sql .= ' AND KundenID = "?"';
}
$stmt = $verbindung->prepare($sql);
$stmt->bind_param($typ, //Hier müssen die Werte übergeben werden
//Suche in Tabelle ausgeben
tabelle($sql);
}
Wie kriege ich das nun hin? Ich bin echt ratlos.