Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Campistaaa

Painel de Usuários - Com Problemas

Recommended Posts

Alguém poderia identificar o erro desse código? Eu estava querendo criar um painel de administrador, e nesse painel, eu estava criando um painel onde aparecia os usuários cadastrados, só que, quando vou acessar ele está dando esse erro.

 

Painel de Usuários - Erro

Screenshot_12.thumb.png.d6512b08e77ab480d0715e4388b13086.png

 

Código do Painel de Usuários - localizar_todos_clientes.php

<?php
include 'conexao.php';
$busca=mysqli_query("Select login, senha From cadastros where login");
    
    while ($reg=mysqli_fetch_assoc($busca))()
    {
        echo "<hr>";
        echo "<br>Login: " . $_POST['login'];
        echo "<br>Nome: " . $_POST['nome'];
    }
?>

Banco de Dados - conexao.php

<?php
      $conexao = mysqli_connect("localhost","root", "", "carlos-sampaio");
    
      if (mysqli_connect_errno()):
         echo "Falha ao conectar ao MySQL: " . mysqli_connect_error();
  endif;
  ?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
21 minutos atrás, Campistaaa disse:

while ($reg=mysqli_fetch_assoc($busca))()     {         echo "<hr>";         echo "<br>Login: " . $_POST['login'];         echo "<br>Nome: " . $_POST['nome'];     }

 

O while é da seguinte maneira:

while(true){
	// Do something
}

 

E no seu código tem parênteses adicionais.

while ($reg=mysqli_fetch_assoc($busca))() #Não deve existir esses parênteses adicionais
{
  echo "<hr>";
  echo "<br>Login: " . $_POST['login'];
  echo "<br>Nome: " . $_POST['nome'];
}

 

Sem os parênteses fica assim:

while ($reg=mysqli_fetch_assoc($busca))
{
  echo "<hr>";
  echo "<br>Login: " . $_POST['login'];
  echo "<br>Nome: " . $_POST['nome'];
}

 

Acredito que com essa correção de sintaxe já ajude.

Editado por JonathanMMachado

Compartilhar este post


Link para o post
Compartilhar em outros sites
 
5 minutos atrás, JonathanMMachado disse:

 

O while é da seguinte maneira:


while(true){
	// Do something
}

 

Ou seja, no seu código:


while ($reg=mysqli_fetch_assoc($busca))() #Não deve existir esses parênteses adicionais
{
  echo "<hr>";
  echo "<br>Login: " . $_POST['login'];
  echo "<br>Nome: " . $_POST['nome'];
}

Sem os parênteses fica assim:

while ($reg=mysqli_fetch_assoc($busca))
{
  echo "<hr>";
  echo "<br>Login: " . $_POST['login'];
  echo "<br>Nome: " . $_POST['nome'];
}

Acredito que com essa correção de sintaxe já ajude.

Agora apareceu outro problema, e aquele ainda persiste.Screenshot_16.thumb.png.83799523ea52681a80cb8b164f3c42cd.png

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Campistaaa

É necessario passar 2 parametros na funcão :

no seu esta assim :

44 minutos atrás, Campistaaa disse:

$busca=mysqli_query("Select login, senha From cadastros where login");

 

deve ser assim :

$busca=mysqli_query("Select login, senha From cadastros where login", $conexao);

$conexao é a variavel do seu conexao.php

Compartilhar este post


Link para o post
Compartilhar em outros sites
 

@Campistaaa Olá, 

 

Vamos aos erros.

 

1) Sua query de busca está errada.   Se quer listar todos os usuários cadastrados não precisa do where.

$busca=mysqli_query("Select login, senha From cadastros");

Mas não é só isso.  o mysqli_query() espera dois parâmetros como já foi citado. O parâmetro é referente a conexao. e ela precisa ser a primeira:

 

$busca=mysqli_query($conexao,  "Select login, nome From cadastros");

Além disso, não é legal listar as senhas, então troque para o nome  dela.

 

2) o WHILE tem parenteses a mais, como já foi mencionado também.

 Como você está usando a sintaxe alternativa no IF,  use-a no while também.  Também troque o assoc por array ou object..  por preferência, recomendo o object.

 

while ($reg = mysqli_fetch_object($busca)):

  echo "<hr>
        Login: $reg->login <br>
        Nome:  $reg->nome <br>
       ";
endwhile;

Note que no seu código você está tentando imprimir em tela com $_POST[]  , seria só quando você emitisse dados por um form. como vem do banco de dados, precisa usar a variável que foi designada para os dados no caso o $reg.

PS: o formato "  ->login " é característico do feth_object()

Assim você trata o dado como objeto. Fica muito mais limpo.

 

Então seu código completo fica:

 

<?php
include 'conexao.php';
$busca = mysqli_query($conexao, "Select login, nome From cadastros");
    
    while ($reg = mysqli_fetch_object($busca)):
    
        echo "<hr>
              Login:  $reg->login <br/>
              Nome:   $reg->nome<br/>";
    endwhile;
?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
 

@DiF MDS mano, vce e absurdamente bom, porque n cria um canal ensinando php, css essas coisas. Você e muito bom nisso, eu sei que ia crescer rapidinho.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×