Jump to content


Photo

Resultado De Query Num Array!


  • Faça o login para participar
11 replies to this topic

#1 thiago_costabr

thiago_costabr

    12 Horas

  • Usuários
  • 200 posts
  • Sexo:Não informado

Posted 06/04/2004, 14:46

Pessoal,

Como eu poderia armazenar todos os resultados de uma consulta SQL num array?

Exemplo:


$SQL = mysql_query("SELECT * FROM usuarios");
 while($sql = mysql_fetch_row($SQL)){
  [B] $result = array($sql) [/B]
 }


Isso existe? Eu gostaria de armazenar todos os resultados num array assim:


$result = array("usuario1", "usuario2", "usuario3", "usuario4", "usuario5")


Teria como?

Att,
Thiago C.

#2 thiagorsl

thiagorsl
  • Visitantes

Posted 06/04/2004, 15:10

Vc quer armazenar o mesmo campo num unico array é isso acho isso unutil pois o while fá fica tudo num array mais vou explicar

SQL = mysql_query("SELECT * FROM usuarios");
$cont=0;
while($sql = mysql_fetch_row($SQL))
{
$usuarios[$cont]=$sql[usuario];
$cont++;
}

Pronto agora a o $usuario vai ter todos os usuarios e faça assim com os outros campos ;)

#3 thiago_costabr

thiago_costabr

    12 Horas

  • Usuários
  • 200 posts
  • Sexo:Não informado

Posted 06/04/2004, 15:27

Essa forma não funcionou.... Eu gostaria de criar uma arary para posteriormente chamar os resultados num FOR!

Valeu,

Att,
Thiago C.

#4 thiagorsl

thiagorsl
  • Visitantes

Posted 06/04/2004, 15:31

Chamar num for e chamar num while é a mesma coisa não vai fazer diferença?? Explique pq vc quer isso que ai te explico como fazer oq vc quer se eu souber ;)

Edição feita por: thiagorsl, 06/04/2004, 15:40.


#5 Goku Jr

Goku Jr

    Nilson

  • Usuários
  • 3757 posts
  • Sexo:Masculino

Posted 06/04/2004, 15:38

suponhamos que você puxe todos os dados e coloque numa variavel ( igual ao que o Thiago fez )
assim já estamos criando uma array !

agora para ler o que tem dentro es assim :

for ($x=0;$x<=mysql_num_rows($sql);$x++) {
echo $usuarios[$x]."<br>";
}

pronto !

e só repetir com os D+ campos que você fizer !
-----------------------------------------------------------------------
PALMEIRAS - Primeiro campeão do mundo em 1951

#6 thiago_costabr

thiago_costabr

    12 Horas

  • Usuários
  • 200 posts
  • Sexo:Não informado

Posted 06/04/2004, 17:34

Na verdade é o seguinte...

Eu preciso reunir todo o resultado num array para depois fazer outra query fora do WHILE com esses valores entende? Eu nao tô sabendo fazer isso!

Quem souber e puder me ajudar....

Att,
Thiago C.

#7 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 06/04/2004, 19:08

É só usar um foreach com a primeira matriz, resultante do mysql_fetch_array por exemplo.
Klaus Paiva
Conheça também: Taperás

#8 thiago_costabr

thiago_costabr

    12 Horas

  • Usuários
  • 200 posts
  • Sexo:Não informado

Posted 07/04/2004, 12:21

Como assim?

Você diz:


$SQL = mysql_query("SELECT * FROM usuarios WHERE nivel = 'operador'");
  while ($sql = mysql_fetch_row($SQL)){
   $result = $sql[0];  
  }
 
  foreach($result as $resultado){
   echo $resultado;
  }


Não entendi muito bem isso KLAUS... Tipo pegar a primeira matriz e fazer um array!

Você pode me explicar melhor isso?

Att,
Thiago C.

#9 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 07/04/2004, 13:47

Então... só que ao invés de printar (echo), como você mesmo fez... Você criaria uma nova matriz, tipo troca a linha do echo no seu código por $partes[] = $resultado;

Pronto. Todos os elementos do resultado estarão na nova matriz.
Klaus Paiva
Conheça também: Taperás

#10 thiago_costabr

thiago_costabr

    12 Horas

  • Usuários
  • 200 posts
  • Sexo:Não informado

Posted 07/04/2004, 14:19

É.... mas deu erro.... Olha o erro:

Warning: Invalid argument supplied for foreach() in /home/novo/pestana/acao_liberarquarto.inc.php on line 56

Ou seja... argumento inválido no FOREACH!

Olha agora o código:

$SQL = mysql_query("SELECT * FROM usuarios WHERE nivel = 'operador'");
 while($sql = mysql_fetch_row($SQL)){
    $resultado = $sql[0];
  }
  foreach ($resultado as $result) {
    $elementos[] = $result;
  }


Sabe o porque disso? Eu sei lá... Eu acho estranho eu conseguir pegar TODOS os valores do WHILE e colocar para fora tão facilmente assim....

E agora? O que eu faço?

Abraço,

Att,
Thiago C.

Edição feita por: thiago_costabr, 07/04/2004, 14:21.


#11 thiagorsl

thiagorsl
  • Visitantes

Posted 07/04/2004, 14:25

Olha isso
while($sql = mysql_fetch_row($SQL)){
   $resultado = $sql[0];
 }

É apenas uma a string por isso da errono foreach façaaquele negocio que te expliquei de colocar num array usando um cont e pronto deve resolver o seu problema ...


Resumindo o problema é que aquilo é umastring não um array por isso da erro ;)

#12 JeffMalm

JeffMalm

    Super Veterano

  • Usuários
  • 12254 posts
  • Sexo:Feminino
  • Localidade:Mount Carey

Posted 13/02/2023, 15:36

stromectol manufacturer If the users of convenience- only surgery paid the full cost and or if physicians and hospitals could not get third- party reimbursement, such expenses might greatly reduce the incidence of convenience- only surgery
Drinking warm or hot water during pregnancy is totally safe but you need to ensure some points to avoid health issues buy z pack
buy cialis without prescription Corresponding to the recent finding that inactivating EZH2 mutations were recurrently identified in patients with MDS and MDS MPN, 13 20 Ezh2 loss alone in mice induced MDS and MDS MPN after a long latency




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq