Jump to content
marcelobbt

Mysqli

Recommended Posts

Estou tentando fazer um aplicativo que salva dados num banco mysql e para isso estou usando o php, só que está apresentando o erro abaixo que não consigo corrigir.

 

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result_boolean given in <endereço .../query.php> on line 8

 

Abaixo os arquivos:

query.php

<?php	
	require "Db.class.php";
	$db = new Db();

	$sqlBusca = $_POST['sql'];// Pega o codigo sql enviado pelo aplicativo
	$resultado = $db->query($sqlBusca);
	// Transforma o resultado da consulta em um array associativo
	while ($array = mysqli_fetch_assoc($resultado)) {
		$dados[] = $array;
	}
	echo json_encode($dados);// Retorna o resultado da consulta no formato JSON
?>

a classe: Db.class.php

<?php
		
	/**
	*  conex達o com o banco de dados usando mysqli
	*/
	class Db{
		
		private $con;
        function __construct(){
           $this->con = mysqli_connect ('LOCALHOST', 'usuario', 'senha', 'banco');
            // verifica conex達o
            if (mysqli_connect_errno($this->con)) {
				echo "Problemas para conectar no banco. Verifique os dados! ".mysqli_connect_error($this->con);
				die();
			}
        }
		// Faz a consulta sql
		public function query($sql){ //echo $sql; 
			return mysqli_query($this->con, $sql);

		}
	}

?>

 

 

Share this post


Link to post
Share on other sites

Veja se podem me ajudar.

Quando mando a informação do aplicativo, aparece os seguintes resultados:

 

No arquivo Db.class.php

na linha 

public function query($sql){ echo $sql;

Aparece a query correta em $sql. Se eu copiar e colocar no mysql ele insere a linha.

 

Já no arquivo query.php

 

Na linha

$resultado = $db->query($sqlBusca);     var_dump ($resultado);

 

Ao acrescentar o var_dump, aparece como resultado bool(false). Sei que o erro deve estar por aqui, mas não estou conseguindo ver o que estou errando.

 

 

 

 

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 Felper
      Criei um sistema de login com php e mysql mas não consigo realizar o login mesmo tendo certeza de que os dados foram cadastrados com sucesso. Não sei o que fiz de errado. Vejam o código:
      <?php $login2 = $_POST['loginlogar']; $senha2 = $_POST['senhalogar']; $link = mysqli_connect("localhost", "root", "", "bancolanche") or die("<h1>Não foi possível conectar!!</h1>". mysqli_error()); $banco = mysqli_select_db($link, "bancolanche") or die("<h1>Não foi possível abrir banco de dados!!</h1>". mysqli_error()); $sql = "SELECT login, senha FROM users"; $resulta = mysqli_query($link, $sql); while ($book = $resulta->fetch_object()) { $logindb = $book->login; $senhadb = $book->senha; } if($login2 == "" || $senha2 == ""){ $_SESSION['msg'] = "<h1 style='color:red'>Erro ao logar! Há campos de preenchimento obrigatório em branco.</h1>"; header("Location: logar.php"); } else { if($logindb==$login2 && $senhadb==$senha2){ $_SESSION['msg'] = "<h1 style='color:green'>Logoff realizado com sucesso!</h1>"; header("Location: index.html"); } else { $_SESSION['msg'] = "<h1 style='color:red'>Erro ao logar! Usuário inexistente ou senha incorreta.</h1>"; header("Location: logar.php"); } } mysqli_close($link); ?>  
    • By Marcos Vinícius
      Prezados,
       
      Estou tentando fazer uma consulta que soma os valores de um campo em determinado mês/ano mas não estou conseguindo fazer funcionar. Alguém tem uma ideia do que pode ser?
       
      "SELECT sum(caepf) AS scaepf FROM atend WHERE date_format(data, '%Y-%m') <= date_format('$d', '%Y-%m') AND date_format(data, '%Y-%m') >= date_format('$d', '%Y-%m') AND pav = '$nome_pav' AND dr = '$dr' ";  
    • By r.guerra
      Salve galera, boa tarde a todos.
      estou tendo um problema que ainda nao consegui enxergar... faço uma consulta mysql que funciona normalmente no proprio ambiente(mysql) mas ao solicitar a exibição do campo via php gera nao exibe e me tras um alerta.
       
      ****codigo php
      function monta_avaliacao($cpf){
          $query = mysqli_query($_SESSION["conector"],"SELECT c.*, a. cliente AS clientes FROM clientes AS c INNER JOIN avaliacoes AS a ON c.id = a.cliente WHERE c.cpf='$cpf'");
           $dados = mysqli_fetch_assoc($query);
          print $dados['c.cpf'];
           }
       
      *****sainda no html
      Notice: Undefined index: c.cpf in C:\xampp\htdocs\acus\inclusoes\funcoes.php on line 29
      Notice: Undefined index: a.pe in C:\xampp\htdocs\acus\inclusoes\funcoes.php on line 30
       
      tenho um arquivo com as funções, e apenas mando os parametros.
    • By EvertonFD
      ola senhores estou estudando php e msqli estou com uma dificuldade para fazer um ranking prq o o time joga como visitantes mas as vezes como mandante então preciso somar quando ele aparece nas duas situações. por exemplo {time 1x time2} e {time 3 x time 1} fiz uma tabela de enfrentamento que já serve como agenda. o problema é não consigo trazer os esse dados so vem de uma situação e não das duas. caso alguem possa me ajudar ou dar uma outra ideia de como fazer esse ranking agradeço. esse é o codigo que estou usando.
      SELECT id, timea_id, SUM(gola), timeb_id, SUM(golb) FROM agenda WHERE timea_id=2  
    • By Giuliano Maffei
      Oi Pessoal, sou novo por aqui.
      Agradeço se alguém puder me ajudar.
      Tenho um banco de dados com a tabela abaixo:
      DB pets
      ------------------------------------------------------------------------------------
      | id | pet_tutor | pet_name | pet_species | pet_breed  |
      ------------------------------------------------------------------------------------
      | 1  |        José |             Rex |                   1 |    Vira-latas |
      | 2  |      Paulo |      Bichano |                  2 |        Siamês |
      | 3  |       João |             Max |                  1 | Lhasa-apso |
      ------------------------------------------------------------------------------------
       
      Fiz o código abaixo:
      $species_lang = array('0' => 'Selecionar','1' => 'Cachorro', '2' => 'Gatos', '3' => 'Acarás');
       
      SELECT (pets.id as id, pet_tutor, pet_name, {(" . $species_lang['pet_species'] . ")}, pet_breed FROM pets)
       
      Resultado:
      -----------------------------------------------------------------------------------
      | id | pet_tutor | pet_name | pet_species | pet_breed  |
      ------------------------------------------------------------------------------------
      | 1  |        José |             Rex |                        | Vira-latas |
      | 2  |       Paulo |    Bichano |                        |     Siamês |
      | 3  |        João |           Max |                        | Lhasa-apso |

      -----------------------------------------------------------------------------------
      Porque não consigo carregar o campo 'pet_species' com a raça do pet. Alguém tem uma luz pra me ajudar?
       
      Obrigado
×

Important Information

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