Я пытаюсь преобразовать некоторый код PHP для уведомлений в более подходящий подготовленный оператор. Независимо от того, что я пытаюсь, он разбивает мою страницу. Есть ли какое-нибудь тело, способное сказать мне, где ошибка?MYSQLI Подготовленное заявление White Page
EDIT Страница не заполнена полностью. Страница разрывается после этого кода.
$acctNotsQry = $redoDB->prepare('SELECT message, nDate FROM notifications WHERE uID = ? AND nSeen = "0" ORDER BY nDate DESC');
$acctNotsQry->bind_param('i', intval($memID));
$acctNotsQry->execute();
$acctNotsQry->store_result();
$acctNotsQry->bind_result($notMessage, $notnDate);
if($acctNotsQry->num_rows == 0){
echo '<li><div class="nilNots">NO NOTIFICATIONS</div></li>';
} else {
while($acctNotsQry->fetch()) {
?>
<li><i class="fa fa-bell"></i> <?php echo htmlspecialchars_decode(stripslashes($notMessage)); ?>
<p><?php echo date('d M Y - h:ia', strtotime($notnDate)); ?></p></li>
<?php
}
}
$acctNotsQry->close();
ВТОРОЙ EDIT: Следующий код работает, выше нет. Это может помочь с решением:
$acctNotsQry = 'SELECT * FROM notifications WHERE uID = "'.$memID.'" AND nSeen = "0" ORDER BY nDate DESC';
$acctNotsRes = $redoDB->query($acctNotsQry);
$acctNotsNum = $acctNotsRes->num_rows;
if($acctNotsNum == 0){
echo '<li><div class="nilNots">NO NOTIFICATIONS</div></li>';
} else {
while($acctNotsRow = $acctNotsRes->fetch_assoc()){
$notMsg = $acctNotsRow['message'];
?>
<li><i class="fa fa-bell"></i> <?php echo htmlspecialchars_decode(stripslashes($notMsg)); ?>
<p><?php echo date('d M Y - h:ia', strtotime($acctNotsRow['nDate'])); ?></p></li>
<?php
}
}
Я пробовал искать решение безрезультатно. Большое спасибо заранее.
Белая страница может означать ошибки синтаксиса. Проконсультируйтесь по следующим ссылкам http://php.net/manual/en/mysqli.error.php и http://php.net/manual/en/function.error-reporting.php и примените это к своему коду. –
Простите, это не совсем пусто. он ломается после кода выше. – NOJ75
Что вы подразумеваете под «после кода»? проверьте на наличие ошибок, как я сказал. –