Hallo robertroth,
Warning: mysqli_stmt::bind_param(): Number of variables doesn't match number of parameters in prepared statement in
Die passt aber nicht zu dem geposteten Code. Außerdem solltest Du $stmt->error abfragen NACH dem execute()
habe ich!
function produkte($mysqli, $suche=false) {
define('DEBUG', true);
$select = "SELECT p_id, p_type, p_pkategorie, p_code, p_hersteller, p_serie, p_geraet, p_bezeichnung, p_bild, p_artnr, p_farbe, p_inhalt, p_preis, p_bestand, p_hinweis, p_status
FROM web_produkte ";
if ($suche) {
$stmt = $mysqli->prepare($select . "WHERE p_artnr=? " );
$stmt = $mysqli->prepare($select . "ORDER by p_id DESC LIMIT 100 " );
$stmt->bind_param("s", $suche);
} else {
$stmt = $mysqli->prepare($select . "ORDER by p_id DESC LIMIT 100" );
}
$stmt->execute();
if( DEBUG && !$stmt ) { echo '<pre>', $mysqli->error, '</pre>'; }
$stmt->bind_result($p_id, $p_type, $p_pkategorie, $p_code, $p_hersteller, $p_serie, $p_geraet, $p_bezeichnung, $p_bild, $p_artnr, $p_farbe, $p_inhalt, $p_preis, $p_bestand, $p_hinweis, $p_status);
$stmt->store_result();