我正在做一个分页系统,当我执行'for'时,文件未在require_once'carregarOpinioes.php'上获取任何变量。
第33行(
carregarOpinioes.php
<?php
require_once('../../../database/config.php');
include '../geral.php';
apenasAdmin();
function connectToDatabase()
{
$conn = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DATABASE);
if ($conn->connect_errno) {
$code = $conn->connect_errno;
$message = $conn->connect_error;
printf("<p>Connection error: %d %s</p>", $code, $message);
return false;
}
return $conn;
}
//Conexão à BD
if (!($conn = connectToDatabase())) {
exit();
}
// Se a página já tiver definida ela vai buscar o valor do $_GET['pagina'] se não tiver ela fica com o valor 1, o ? serve para verificar se o boolean é true ou false.
$pagina = (isset($_GET['pagina'])) ? $_GET['pagina'] : 1;
//Selecionar todas as opiniões onde o comentário não está vazio
$sqlOpinioesGeral = "SELECT * FROM opiniao WHERE comentario = ''";
$result = mysqli_query($conn, $sqlOpinioesGeral);
//Variavel para saber a quantidade total de opiniões existentes na tabela
$totalOpinioes = mysqli_num_rows($result);
//Quantidade de opiniões por página
$opPorPagina = 5;
//Calcular o número de páginas totais
$numPaginas = ceil($totalOpinioes/$opPorPagina);
//Calcular o numero da linha da tabela que dá inicio a cada página
$inicio = ($opPorPagina * $pagina) - $opPorPagina;
$query = "SELECT
u.Nome,
o.id_opiniao,
o.qtd_estrelas,
o.comentario,
o.data,
o.aprovacao
FROM
opiniao o
JOIN utilizador u ON
(o.id_user = u.id_user)
WHERE
o.comentario != ''
LIMIT $inicio, $opPorPagina";
$resultDois = mysqli_query($conn, $query);
$totalOpinioes = mysqli_num_rows($resultDois);
opinioesAdmin.php
.
.
.
<?php
require_once 'carregarOpinioes.php';
?>
<div class="container-fluid ">
<div class="row">
<div class="col-12 page">
<table class="table table-dark">
<thead>
<tr>
<th>ID</th>
<th>Data</th>
<th>Nome</th>
<th>Avaliação 1-5</th>
<th>Comentário</th>
<th>Gerir</th>
</tr>
</thead>
<tbody>
<?php while ($dadosOpiniao = mysqli_fetch_object($resultDois)) {
echo "
<tr>
<th scope=\"row\">#" . $dadosOpiniao->id_opiniao . "</th>
<td>" . $dadosOpiniao->data . "</td>
<td>" . utf8_encode($dadosOpiniao->Nome) . "</td>
<td>" . $dadosOpiniao->qtd_estrelas . "</td>
<td><button type=\"button\" class=\"btn botao botaoComentario\" data-toggle=\"modal\" data-target=\"#modal" . $dadosOpiniao->id_opiniao . "\"><i class=\"far fa-eye\"></i></button>
<div class=\"modal fade\" id=\"modal" . $dadosOpiniao->id_opiniao . "\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"exampleModalLabel\" aria-hidden=\"true\">
<div class=\"modal-dialog\" role=\"document\">
<div class=\"modal-content\">
<div class=\"modal-header\">
<h5 class=\"modal-title\" id=\"exampleModalLabel\">Opinião de " . utf8_encode($dadosOpiniao->Nome) . "</h5>
<button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Fechar\">
<span aria-hidden='true'>×</span>
</button>
</div>
<div class=\"modal-body\">
<p>«" . utf8_encode(utf8_decode($dadosOpiniao->comentario)) . "»</p>
</div>
<div class=\"modal-footer\">
<button type=\"button\" class=\"btn btn-secondary\" data-dismiss=\"modal\">Fechar</button>
</div>
</div>
</div>
</div>
</td>
<td>
<div class=\"formsJuntos\">
<form><button type=\"submit\" class=\"btn botao botaoAprovar\"><i class=\"fas fa-check\"></i></button></form>
<form><button type=\"submit\" class=\"btn botao botaoApagar\"><i class=\"fa fa-trash\"></i></button></form>
</div>
</td>
</tr> ";
}
?>
</tbody>
</table>
<ul class="pagination justify-content-center">
<li class="page-item disabled">
<a class="page-link" href="#" tabindex="-1" aria-disabled="true">Previous</a>
</li>
<?php
for ($i = 1; $i < $numPaginas + 1; $i++) {
echo '<li class="page-item"><a class="page-link" href="opinioesAdmin.php?pagina=<?' . $i . '">'. $i .'</a></li>';
}
?>
<li class="page-item">
<a class="page-link" href="#">Next</a>
</li>
</ul>
</div>
</div>
</div>
.
.
.
当前输出为1 但是应该是2 因为$ resultDois有8行! 我希望这个社区能够为我提供帮助。
答案 0 :(得分:-1)
对,我不好。这是$ sqlOpinioesGeral =“ SELECT * FROM opiniao WHERE comentario = ”上的操作员错误;我想要!=