Hallo liebe Forengemeinde,
ich habe ein kleines Problem mit meiner Blätterfunktion in PHP. Das Problem ist, dass es ewig dauert bis die Seiten aufgebaut werden. Das wird wohl an der enomen Größe der Datenbank liegen, die dort durchforstet wird.
Hat jemand vielleicht wie ich es umgehen kann, dass die Laufzeit so hoch ist?
Hier mal der Code den ich verwendet habe:
ich habe ein kleines Problem mit meiner Blätterfunktion in PHP. Das Problem ist, dass es ewig dauert bis die Seiten aufgebaut werden. Das wird wohl an der enomen Größe der Datenbank liegen, die dort durchforstet wird.
Hat jemand vielleicht wie ich es umgehen kann, dass die Laufzeit so hoch ist?
Hier mal der Code den ich verwendet habe:
PHP:
$sql = 'SELECT count(*) FROM traffic';
if (!$stmt = $db->prepare($sql)) {
die('MySQL-Fehler: '.$db->error);
}
$stmt = $db->query($sql);
if (!$stmt) {
die('MySQL-Fehler: '.$db->error);
}
$row = $stmt->fetch_assoc();
$anzahl_daten = $row['count(*)'];
$stmt->close();
$a['seiten'] = ceil($anzahl_daten / $eintraege_seite);
if (empty($_GET['seite'])) {
$the_start = 0;
} else {
$the_start = $_GET['seite'] * $eintraege_seite - $eintraege_seite;
}
$sql = 'SELECT
host,
datetime,
msg,
seq
FROM
traffic
ORDER BY
seq ASC
LIMIT
? , ?';
$stmt = $db->prepare($sql);
if (!$stmt) {
return $db->error;
}
$stmt->bind_param('ii', $the_start, $eintraege_seite);
if (!$stmt->execute()) {
return $stmt->error;
}
$stmt->bind_result($host, $datetime, $msg, $seq);
while ($stmt->fetch()) {
$a['data'][$seq]['host'] = $host;
$a['data'][$seq]['datetime'] = strtotime($datetime);
$a['data'][$seq]['msg'] = explode(" ", $msg);
}