Hallo robertroth,
Es ist aber nicht mehr das Statement von vorhin. Du hast jetzt alles durcheinander gebracht.
Du hast jetzt zweimal prepare() im if-zweig. Das geht gar nicht!
jetzt habe ich den Fehler gesehen :/
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=? 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>', $stmt->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);