Jump to content
tiagosp

mysqli_fetch_assoc retorna apenas uma linha

Recommended Posts

Em uma classe, tenho um método que realiza o select no sql, até o momento funciona com requisições que solicitam uma única linha, porém quando é solicitado todas as linhas, ele retorna apenas o primeiro registro contido no MySQL.

<?php
class SQL
{ 
  private $SQLUsuario = "root";
  private $SQLSenha = "";
  private $SQLHost = "127.0.0.1";
  private $SQLBD = "database1";
     public function SQLSelecionar($Comando){
        #Executa o comando Select no SQL
        $Conn2 = mysqli_connect($this->SQLHost, $this->SQLUsuario, $this->SQLSenha, $this->SQLBD);
        $resultado = mysqli_query($Conn2, $Comando);
        if (mysqli_num_rows($resultado) > 0){
            return mysqli_fetch_assoc($resultado);
        } else{
            #Select retornou sem resultado(s)
            return null;
        }
        mysqli_close($Conn2);
    }
}

 

Share this post


Link to post
Share on other sites

A função mysqli_fetch_assoc obtém apenas uma linha de um conjunto, sendo assim,

utilize a função mysqli_fetch_all  que lhe retornará todas as linhas.

 

LINKS:

mysqli_fetch_all

mysqli_fetch_assoc

Share this post


Link to post
Share on other sites

Disponível ;)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By makinh0
      algoritmo "CalculoIMC"
      var
         M, A, IMC: Real
      iniciO
          Escreva ("Massa (Kg): ")
          Leia(M)
          Escreva("Altura (m): ")
          Leia (A)
          IMC <- M / (A ^ 2) //massa dividido pela altura ao quadrado;;//
          Escreval("IMC: ", IMC :5:2) //5Casas e 2 decimais //
          Se (IMC >= 18.5) E (IMC < 25) entao
          Escreva ("Parabens! Voce esta no seu peso ideal")
          senao
          Escreva("Voce nao esta na faixa de peso ideal")
          FimSe
          
      fimalgoritmo
       
    • By tarsio
      Boa noite pessoa so novo na programação e gostaria de saber, porque meu tempo limite de consulta está no limite, esse e um pedaço do código fora esse tenho mais 14 query então só 8 funcionam e gostaria de saber alguma maneira para que todas a consultas funcionem. Colocando botoes de alguma maneira resolver esse problema.    <div class="panel-group" id="accordion"> <div class="panel panel-default"> <div class="panel-heading"> <h3 class="panel-title"> <a data-toggle="collapse" data-parent="#accordion" href="#collapse9"><h2>cliente<h2></a>
      </h3> </div> <div id="collapse9" class="panel-collapse collapse"> <div> <?php try{   $query7= $Conexao->query( " SELECT C.FTP_CLIENTE,dbo.MinutesToDuration2021(SUM(DATEDIFF(MINUTE,E.DT_ENVIADO,E.DT_RECEBIDO)),COUNT(E.ID_EXAME)) as TEMPO FROM WR_CLIENTE C INNER JOIN E ON  =  WHERE  = 2 AND (convert(datetime,'$datai',110)) AND (convert(datetime,'$dataf',110)) GROUP BY E ORDER BYE ASC;");   $exs7 = $query7->fetchAll();   }catch(Exception $e){ echo $e->getMessage(); exit; }   ?> <br> <br> <table id="table11" data-toggle="table" class="table table-hover" data-sort-name="FTP_CLIENTE" data-sort-name="TEMPO"> <thead> <tr> <th data-field="FTP_CLIENTE" data-sortable="true" scope="row">CLIENTE</th> <th data-field="TEMPO" data-sortable="true" scope="row">TEMPO</th> </tr> </thead> <tbody> <!---carregar os refistro --> <?php foreach($exs7 as $ex) { ?> <tr>   <td><?php echo $ex['FTP_CLIENTE'];?></td> <td><?php echo $ex['TEMPO'];?></td> </tr> <button class="mais">Carregar mais</button> <?php } ?> </tbody> </table> </div> </div> </div> </div>   </div>
    • By Adriana de Luca
      Estou tentando pegar o id do livro para depois fazer um update para controlar o estoque, consegui pegar o id, porem não consigo coloca-lo no mysql
      Se coloco um id valido, ele traz as informações, porem se chamo  {'$livro_id'} da erro.
       
      Alguém pode por favor me ajudar? agradeço muito.
       
      <?php

      $query = mysql_query("SELECT * FROM produtos 
      inner join estoque ON produtos.livro_id = estoque.livro_id");

      ?>
      <div class="central">
                     <form action="#" method="GET">
                         <fieldset>
                             <legend class="titulo">Consultar Livraria</legend>
                             <select type="text" name="produtos">
                                 <option value="">Selecionar..</option>
                              <?php
                                     $sql =  mysql_query("SELECT livro_id, nome as titulo FROM produtos");
                                      while ($result = mysql_fetch_array($sql) )
                                      {
                                         echo "<option value='".$result['livro_id']."'>".$result['titulo']."</option>";
                                     }
                                 ?>                            
                             </select>
                             <input class="botao" type="submit" name="ajustar" value="Ok" />
                         </fieldset>
                      </form>
                     
       <?php
      //aqui ele mostrara o código do livro    
      echo $_GET['produtos'];
      $livro_id='produtos';

      $sql1="SELECT * FROM produtos 
      inner join estoque ON produtos.livro_id = estoque.livro_id WHERE produtos.livro_id= {'$livro_id'}";
            
      $res=mysql_query($sql1); 
                    while($registro=mysql_fetch_row($res))                
      {    
                                            
        $nome=$registro[1];                             
        $autor=$registro[2]; 
        $editora=$registro[3]; 
        $colecao=$registro[4];                             
        $preco=$registro[5];                                   
        $data=$registro[6];   
        $quantidade=$registro[0];                      
                                           
        ?>
        <?php 
            echo "Título: $nome<br>";                                    
            echo "Autor: $autor<br>"; 
            echo "Editora: $editora<br>";  
            echo "Coleção: $colecao<br>";                             
            echo "Preço: $preco<br>";                                    
            echo "Quantidade: $quantidade<br>"; 
            echo "Data: ".date('d-m-Y', strtotime($data))."<br><p>";   

        mysql_close($connect);               
              
      ?>
    • By vinihhylian0103
      Boa noite, eu tenho um campo no meu cadastro para o usuário selecionar seu curso, que seria esse:
       
      <select name="curso" type="text" required=".$this->fields["cursos"]."> <option value="Informática">Informática</option> <option value="ADM">Administração</option> <option value="Edificações">Edificações</option> /> e eu gostaria de saber como gravar essa escolha no banco de dados, segue o código de inserrir
       
      <?php if(!$conect=mysqli_connect('localhost','root','','cadastros')) die ('erro ao conectar'); #Recolhendo os dados do formulário $nome=mysqli_real_escape_string($conect, $_POST['nome']); $sobrenome=mysqli_real_escape_string($conect, $_POST['sobrenome']); $data=mysqli_real_escape_string($conect, $_POST['data_nasc']); $rm=mysqli_real_escape_string($conect, $_POST['rm']); $curso=mysqli_real_escape_string($conect, $_POST['curso']); $email=mysqli_real_escape_string($conect, $_POST['email']); $senha=mysqli_real_escape_string($conect, $_POST['senha']); # Verificando apenas um campo, no caso dado1. $sql = $conect->query("SELECT * FROM usuarios WHERE email='$email'"); if(mysqli_num_rows($sql) > 0){ echo "Este email já foi cadastrado!"; exit(); } else { if(!$conect->query("INSERT INTO usuarios(nome, sobrenome, data_nasc, rm, curso, email, senha) VALUES('$nome','$sobrenome','$data','$rm','$curso','$email','$senha')")) die ('Os dados não foram inseridos'); echo "<script type='text/javascript'>alert('Cadastro Concluído!');</script>"; header('Location: index.html'); } Muito obrigado desde já!
    • By andrelimaverde
      Pessoal preciso de uma ajuda, desde já agradeço à todos.
      "Site teste, estudos..."
      Tenho um formulário com 3 etapas, ele está trabalhando em php normalmente e salvando os dados preenchidos em .txt (para testes apenas).
      Vamos lá, nas 3 etapas o form está com action="1.php" (2.php,  3.php) e method="post". [Não vou colocar muito código para simplificar, pois é um formulário básico fácil de entender]
      Exemplo:  Pagina 1 - envia para action '1.php'
      Nome: 
      Telefone:
      <input type="submit" value="Continuar">
      (
       O arquivo 1.php armazena os dados e redireciona => header( 'Location:Pagina2.php' ) ;   
       Assim como os outros php's
      )
      Pagina 2 - action 2.php armazena os dados e redireciona => header( 'Location:Pagina3.php' ) ; 
      Cidade:
      Endereço:
      <input type="submit" value="Continuar">
       
      A questão está na 3ª página
      Página 3 -
      Email:
      (Preciso que após preencher o campo da página 3 no caso "Email:",  ao clicar no botão, neste caso não sei se seria um submit ou button. O formulário não redirecionar para pagina 4, ao clicar ele enviar e salvar normalmente, mas aparecer um novo input na mesma pagina por Exemplo:"Twitter:"  ) 
      No caso preciso que ele não redirecione , gostaria de colocar um gif de carregando por 15 segundos por exemplo como se estivesse processando as informações... e em seguida ele apresentar o novo input do "Twitter:" , onde ai sim enviaria normalmente...
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.