Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal do fórum, eu realmente fiquei preso nesse problema pois não sei como devo proceder, o erro é o seguinte: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in
Eis aí o código:
$conexao=mysqli_connect("localhost", "root", "root", "mysqli_login");
$pubs = mysqli_query($conexao, "SELECT * FROM pubs desc");
while ($pub = mysqli_fetch_assoc($pubs)) {
$email = $pub['user'];
$saberr = mysqli_query("SELECT * FROM tbl_users WHERE email = '$email'");
$saber = mysqli_fetch_assoc($saberr);
$nome = $saber['username']." ".$saber['username'];
$id = $pub['user_id'];
if($pub['imagem']=="") {
echo '<div class="pub" id="'.$id.'">
<p><a href="#">'.$nome.'</a> = '.$pub["data"].'</p>
<span>'.$pub['texto'].'</span><br />
</div>';
}else{
echo '<div class="pub" id="'.$id.'">
<p><a href="#">'.$nome.'</a> = '.$pub["data"].'</p>
<span>'.$pub['texto'].'</span><br />
<img src="upload/'.$pub["imagem"].'" />
</div>';
}
}
Se alguém puder ajudar eu agradeço!@wootzorNão consegui acrescentar no código, ele simplesmente fica com tela branca.
Como te disse no outro tópico, a sintaxe é:
$saberr = mysqli_query($link, "SELECT * FROM tbl_users WHERE email = '$email'");
Onde $link é o objecto *connection* devolvido pela função mysqli_connect().Habilita os erros:
Segue os conselhos que te dei nesse post:
https://forum.imasters.com.br/topic/557053-login-não-conecta-com-postagens/#comment-2222299
E as instruções do colega @wootzor
Confirmou se a conexão está correta?
Ex:
http://php.net/manual/pt_BR/mysqli.connect-error.php
Existe dados em ambas tabelas?
Existem as tabelas?
pubs/tbl_users ??
os erros estão ativados igual exemplifiquei no post acima?
Se pegar a consulta gerada como o @wootzor é inserido pelo banco?
Habilitei os erros e mesmo assim do mysqli e a conexão com o database está certa, as tabelas também existem e os erros estão ativados.
Fiz o que o @wootzor disse e mesmo assim continua dando o mesmo erro. :/
Como assim?
Se executou manualmente o Insert na base?
Foi certo inseriu?
Isso acontece quando a query não é executada.
-
A variável $email está preenchida (não é visível na parte de código que mostraste)?
-
A variável $email tem o valor esperado (uma string)?
-
Tenta fazer um echo da instrução e executar directamente no MySQL (usando o phpMyAdmin, por exemplo).