[RESOLVIDO] Call to a member function fetch_array() on string

14 respostas
programaçãophp
C

Olá tudo bem ?

Estou recebendo a mensagem de erro:
Fatal error: Call to a member function fetch_array() on string in C:\Program Files…pratos.php on line 79

não estou conseguindo resolver, poriam me ajudar por favor segue linha do código:

$sql = "select * from tb_itens where categoria='pratos' order by nome;";
		while($linha = $sql->fetch_array()){
			$id     = $linha["id"];
			$nome   = $linha["nome"];
			$imgid  = $linha["img"];
			echo "<li><img src='pratos/".$imgid.".jpg'/><form id='form-id' method='post' action='gerencia/adddb.php' target='_self'><input type='hidden' name='cod' value='$id'> <h3> $nome</a></h3></span>Porções:	<select name='quant'  data-native-menu='false' data-theme='c' >
		   <option value='0'>0</option>
		   <option value='1'>1</option>
		   <option value='2'>2</option>
		   <option value='3'>3</option>
		   <option value='4'>4</option>
		   <option value='5'>5</option>
		   <option value='6'>6</option>
		</select><input type='submit' value='Add'></form></li>";
		}

14 Respostas

rodriguesabner
<?php while ($linha = $sql->fetch_array()) { ?>
//Alguma coisa
<?php } ?>
C

Olá @rodriguesabner tudo bom ?
infelizmente o erro ainda persiste :confused:

rodriguesabner

$sql = "SELECT * FROM tb_itens WHERE categoria= 'pratos' ORDER BY nome";

C

@rodriguesabner fiz como sugeriu:

$sql = "SELECT * FROM tb_itens WHERE categoria= 'pratos' ORDER BY nome";
		while($linha = $sql->fetch_array()){
			$id     = $linha["id"];
			$nome   = $linha["nome"];
			$imgid  = $linha["img"];
			echo "<li><img src='pratos/".$imgid.".jpg'/><form id='form-id' method='post' action='gerencia/adddb.php' target='_self'><input type='hidden' name='cod' value='$id'> <h3> $nome</a></h3></span>Porções:	<select name='quant'  data-native-menu='false' data-theme='c' >
		   <option value='0'>0</option>
		   <option value='1'>1</option>
		   <option value='2'>2</option>
		   <option value='3'>3</option>
		   <option value='4'>4</option>
		   <option value='5'>5</option>
		   <option value='6'>6</option>
		</select><input type='submit' value='Add'></form></li>";
		}

porém o problema ainda persiste: Call to a member function fetch_array() on string
:confused: estou meio perdido já…

rodriguesabner

Fiz algumas alterações aqui e funcionou:

require('conexao.php');
$resultado = $conexao-> query($query2);
$sql = "select * from veiculos";
while ($query = $resultado->fetch_assoc()){
	$id     = $query["id"];
    $nome   = $query["nome"];
  	$imgid  = $query["img"];
	echo "<li><img src='pratos/".$imgid.".jpg'/><form id='form-id' method='post' action='gerencia/adddb.php' target='_self'><input type='hidden' name='cod' value='$id'> <h3> $nome</a></h3></span>Porções:	<select name='quant'  data-native-menu='false' data-theme='c' >
	<option value='0'>0</option>
	<option value='1'>1</option>
	<option value='2'>2</option>
	<option value='3'>3</option>
	<option value='4'>4</option>
	<option value='5'>5</option>
	<option value='6'>6</option>
	</select><input type='submit' value='Add'></form></li>";
}

conexao.php :

<?php
define('HOST', '127.0.0.1');
define('USUARIO', 'root');
define('SENHA', '');
define('DB', 'nomeDoBanco');
 
$conexao = mysqli_connect(HOST, USUARIO, SENHA, DB) or die ('Não foi possível conectar');
?>
C

@rodriguesabner

Muito obrigado por sua paciência cara, fiz as alterações que informou porém ele está me retornando essas mensagens

Notice: Undefined variable: query2 in C:…\pratos.php on line 77

Warning: mysqli::query(): Empty query in C:…\pratos.php on line 77

Fatal error: Call to a member function fetch_assoc() on boolean in C:…\pratos.php on line 79

rodriguesabner

Opa, desculpa, eu acabei colocando errado:

$resultado = $conexao-> query($query);

rodriguesabner

Quando você ler essa mensagem, quer dizer que não encontrou a variável informada. Nesse caso a variável que não foi encontrada foi a query2

C

eu imaginei que poderia ter sido isso brow e testei sem o 2:

Notice: Undefined variable: query in C:…\pratos.php on line 77

Warning: mysqli::query(): Empty query in C:…\pratos.php on line 77

Fatal error: Call to a member function fetch_assoc() on boolean in C:…\pratos.php on line 79

rodriguesabner

MALUCO, eu mandei o código todo bugado kkkkkkkk:

$query = "select * from algumaCoisa";
$resultado = $conexao-> query($query);
while ($query = $resultado->fetch_assoc()){
	$id     = $query["id"];
    $nome   = $query["nome"];
  	$imgid  = $query["img"];
	echo "<li><img src='pratos/".$imgid.".jpg'/><form id='form-id' method='post' action='gerencia/adddb.php' target='_self'><input type='hidden' name='cod' value='$id'> <h3> $nome</a></h3></span>Porções:	<select name='quant'  data-native-menu='false' data-theme='c' >
	<option value='0'>0</option>
	<option value='1'>1</option>
	<option value='2'>2</option>
	<option value='3'>3</option>
	<option value='4'>4</option>
	<option value='5'>5</option>
	<option value='6'>6</option>
	</select><input type='submit' value='Add'></form></li>";
} 
?>
C

nossa cara você é incrível, agora está aparecendo todas as opções da minha comanda aqui muito obrigado, seria bom ter um contato direto com você kkk iria facilitar minha vida !!!

rodriguesabner

Vai mandando aqui no fórum, aí a gente vai te ajudando!

C

vlw man !!!
desculpa incomodar pra caramba ai

rodriguesabner

Relaxa cara, o fórum é pra tirar dúvidas mesmo.

Criado 8 de outubro de 2018
Ultima resposta 8 de out. de 2018
Respostas 14
Participantes 2