Boa tarde à todos…Há um problema com esse método…Tenho os script no meu Xammp de como fazer carregamento sob demanda com JQuery (Não sou muito fã dessas bibliotecas), PHP e Mysql (Antigo)…
Ao executar essa aplicação em Mysql ele funciona perfeitamente, porém quando troco MYSQLI ele não carrega os Dois primeiros registros definidos por um “LIMIT” e fica dando load infinito (Imagem GIF)…Os erros ao mudar para MYSQLI são:
Warning: mysqli_select_db() expects exactly 2 parameters, 1 given in C:\xampp\htdocs\load.php on line 4
Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\load.php on line 6
Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\load.php on line 7
Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\load.php on line 8
Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\load.php on line 9
Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\load.php on line 19
Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, null given in C:\xampp\htdocs\load.php on line 20
Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\load.php on line 22
{“totalResults”:null,“dados”:null}
Os scripts são
<?php
sleep(1); //Coloquei Sleep 1 para ver o GIf carregando antes de trazer +2 registros ao clicar em Carregar mais
mysqli_connect("localhost", "root", "");
mysqli_select_db("exemplo");
$init = $_POST['init'];
$max = $_POST['max'];
$result = array(
'totalResults' => 0,
'dados' => null
);
$queryTotal = mysqli_query("SELECT * FROM usuarios");
$result["totalResults"] = mysqli_num_rows($queryTotal);
$queryDados = mysqli_query("SELECT nome FROM usuarios LIMIT $init, $max");
if($result["totalResults"] > 0){
while($res = mysqli_fetch_assoc($queryDados)){ $arr[] = $res; }
$result["dados"] = $arr;
}
echo json_encode($result);
?>
funcção JQuery
$(function(){
carregar(0, 2, 'load.php');
$("a.carregar-mais").click(function(evento){
evento.preventDefault();
var init = $("ol li").length;
carregar(init, 2, 'load.php');
});
function carregar(init, max, url){
var dados = { init : init, max : max };
$("ol").append('<li><img src="load.gif"></li>');
$.post(url, dados, function (data) {
$("ol li").last().remove();
for(i = 0; i < data.dados.length; i++){
$("ol").append('<li>'+data.dados[i].nome+'</li>');
}
var conta = $("ol li").length;
if(conta == data.totalResults) {
$("a.carregar-mais").hide();
}
}, "json");
}
});
O index para teste
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Carregamento sob demanda com AJAX</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="functions.js"></script>
</head>
<body style="background:#617299;">
<ol></ol>
<hr>
<a href="#" class="carregar-mais">Carregar Mais</a>
</body>
</html>