Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

manoaj

Retornar loop atraves de função

Recommended Posts

Olá pessoal boa noite.

Bom eu queria saber se é possivel retornar um loop de uma consulta atraves de uma função.

em uma consulta normal e direta eu simplesmente uso um while($result = $query->fetch_array())){} e chamo os valores que eu quero dentro desse while $result['id'] e bla bla bla,

 

mas como eu faria isso em uma função

 

 

function exemplo(){

 

consulta aqui

 

return ( o que)?????

}

 

 

e como chamo esses valores?

Compartilhar este post


Link para o post
Compartilhar em outros sites
return ( o que)?????

o que, o que?

$result = $query->fetch_array()

A variavel $result ja é um array com dados da consulta

 

o que vc queria que retornasse?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim é um array mas na é um loop, quero retornar um loop ou as informações da consulta para que eu possa montar um loop depois com as informações da minha consulta.

Tentei retornar um fetch_ assoc pra depois usar um foreach mas não deu certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim é um array mas na é um loop,

 

mas é no array que estarão os dados

 

 

..quero retornar um loop ou as informações da consulta para que eu possa montar um loop depois com as informações da minha consulta.

nao existe ' retornar loop', você quer um array com o resultado de uma consulta de vários registros?

 

nao precisa ser uma funcao sua,

EX

$pdo = new PDO('mysql:host=localhost; dbname=db;', 'user', 'senha');
$stmt = $pdo->prepare('SELECT');
$consulta = $stmt->execute();
$resultado = $stmt->fetchAll();

depois você usa o foreach normalmente em $resultado

foreach ($resultado as $value) {
    
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu sei q não precisa ser exatamente uma função mas o problema é q vou usar esse mesmo select em varios lugares então se desse para montar una função com ele para poder diminuir o código e não precisar ficar fazendo uma consulta em toda página q eu tiver q usar ele seria melhor eu acredito, não só na estética do código como tb na economia do tempo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

então joga aquele trecho dentro da função

function select() {

    $pdo = new PDO('mysql:host=localhost; dbname=db;', 'user', 'pass');
    $stmt = $pdo->prepare('SELECT');
    $stmt->execute();
    $resultado = $stmt->fetchAll();
    return $resultado;
}
foreach (select() as $value) {
    print($value['coluna']);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exatamente isso que queria saber se era possível e tinha dado errado no meu código, uma ultima pergunta, só funciona com fetchAll ou posso usar fetch_array e fetch_assoc?

 

Exatamente isso que queria saber se era possível e tinha dado errado no meu código, uma ultima pergunta, só funciona com fetchAll ou posso usar fetch_array e fetch_assoc?

Problema resolvido, no caso de retornar o um array com os dados do banco é como vc disse, usando o fetchAll do pdo e no mysqli usando o

fetch_all(MYSQLI_BOTH); ou MYSQLI_NUM ou MYSQLI_ASSOC, as três formas de passagem de dados funciona desde que seja usado fetch_all();

com fetch_array(); e fetch_assoc(); não funciona retorna um warning, só com fetch_all mesmo e era exatamente ai que eu estava errando, muito obrigado por me ajudar irmão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.