Oto kod który napisałem:
$newsIDmain = $_GET['id']; $stmt = $mysqli->prepare("SELECT id, title, content, date, author, category, published FROM ".$db_table_prefix."news WHERE id='".$_GET['id']."'"); $stmt->execute(); $stmt->bind_result($newsID, $newsTitle, $newsContent, $newsDate, $newsAuthor, $newsCategory, $newsPublished); $row = $stmt->fetch(); if($row) { [color="#FF0000"]while ($stmt->fetch()) { } $stmt->close();[/color] } else { [b]$stmt->close();[/b] } } else { }
Problem zaznaczyłem na czerwono. Wyniki nie wyświetlają się, a gdy zmienię "while ($stmt->fetch())" na "while ($row)" to strona ładuje się kilkanaście sekund i dostaje kilkaset tych samych wyników (tzn.zapętla się to echo).
Dodatkowo pytanie związane z pogrubioną linijką. Czy $stmt musi zostać zamknięte jeśli przekierowuje na inną stronę czy nie? Nie byłem pewien więc dodałem.