Danke nochmal für deine Hilfe ;)
Ich gehe davon aus, das du meintest das die emote() funktion in der for schleife ausgeführt wurde?
Jetzt, nachdem ich die funktion da rausgenommen habe, auch nur das letzte emote angezeigt... merkwürdig.
Bild:
EDIT:
Mir fällt gerade auf das ich das emote-austauschen ja wieder in die schleife gepackt hab, haha. Nur wie setze ich das dann richtig um?
Egal ob ich While, Foreach oder For nehme, das Ergebnis ist das selbe: Nur das letzte Emote wird angezeigt.
PHP Code:
$e = $pdo->prepare("SELECT * FROM emotes");
$e->execute();
$stmt = $pdo->prepare("SELECT * FROM chat_en ORDER BY time DESC LIMIT 30");
$stmt->execute();
$msg = array();
$row = $e->fetchAll(PDO::FETCH_ASSOC);
$emotes = [];
foreach($row as $emo) {
$emotes[$emo['name']] = $emo['link'];
}
for ($x = 0; $x <= 29; $x++) {
$result = $stmt->fetch(PDO::FETCH_ASSOC);
foreach ($emotes as $key => $value) {
$message = str_ireplace($key, $value, $result['message']);
}
$msg[] = array('name' => $result['name'], 'message' => $message);
}
echo json_encode($msg);
Jetzt, nachdem ich die funktion da rausgenommen habe, auch nur das letzte emote angezeigt... merkwürdig.
Bild:
EDIT:
Mir fällt gerade auf das ich das emote-austauschen ja wieder in die schleife gepackt hab, haha. Nur wie setze ich das dann richtig um?
Egal ob ich While, Foreach oder For nehme, das Ergebnis ist das selbe: Nur das letzte Emote wird angezeigt.