Hallo,
ich wollte in meine Funktion ein LIMIT mit einbauen:
function hersteller($mysqli) {
define ('LIMIT', 4);
$sql = "SELECT COUNT(*) AS `amount` FROM web_hersteller";
$res = $mysqli->prepare($sql);
$res->execute();
$res->bind_result($amount);
$res->fetch();
$res->close();
$offset=0;
if (isset($_GET['page']) && $_GET['page'] > 1 ) {
$offset = (intval($_GET['page']) - 1 ) * LIMIT;
}
$pages = ceil($amount/LIMIT);
$stmt = $mysqli->prepare("SELECT h_id, h_titel, h_titelURL, h_status
FROM web_hersteller
LIMIT '. LIMIT . ' OFFSET ' . $offset");
$stmt->execute();
$stmt->bind_result($h_id, $h_titel, $h_titelURL, $h_status);
$stmt->store_result();
if($stmt->num_rows() > 0) {
while ($stmt->fetch()){
$hersteller[] = array(
'h_id' => $h_id,
'h_titel' => $h_titel,
'h_titelURL' => $h_titelURL,
'h_status' => $h_status
);
}
return $hersteller;
}
}
Jetzt erhalte ich diese Meldung: Fatal error: Call to a member function execute() on a non-object
In Zeile 25 steht:
$stmt->execute();
Kann ich ein LIMIT so wie ich es mir vorstelle innerhalb von einer Funktion nicht verwenden?
PS: Ich bin derzeit mit dem neuen Microsoft Edge online. Kann mich leider nicht einloggen.