Ir para conteúdo

POWERED BY:

Arquivado

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

willwalker

mysql_fetch_object

Recommended Posts

Tem como eu colocar dois mysql_fetch_object ? Por exemplo:

 

while ($oRow = mysql_fetch_object($oUsers) and $sqll = mysql_fetch_object($sqlll)) {

 

echo $oRow->codigo;

echo $sqll->id;

 

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso deve funcionar, já que ambas as condições podem retornar !false.

Mas o que você pretende com isso ?? talvez a sua lágica esteja errada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se ambos $oUsers e $sqlll forem record sets válidos (retornos da função mysql_query, por exemplo) vai funcionar. Mas parece meio confuso mesmo seu código...talvez dê pra fazer uma só query.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É que eu estou buscando informações de dois bancos, no link ele busca o id e o codigo, mas as duas tabelas tem a celula id, e como está complicado usar o Inner Join. Seria mais facil fazer selects diferentes em dois mysql_fetch_object...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Humm, imaginei uma solução com arrays. Pense nisso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

São duas tabelas, uma se chama chamados, e outra se chama interessados, eu preciso buscar o id da interessados, mas eu já fiz o LEFT JOIN, e ele só mostra os resultados da tabela chamados, e o id que eu preciso pegar da tabela interessados não aparece, e as duas tabelas não tem nenhuma célula igual, com registros iguais, para poder pegar esse id de interessados sem dar conflito com o id de chamados. Em chamados ficam cadastrados alguns dos usuários, que assim dizendo são chamados, e os interesados, são outros nomes que não precisa ser usuário, e nem estar cadastrada em chamados, tive a ideia de criar um id2 em chamados e fazer no cadastro de interessados, quando ele cadastrar, pegar a id que foi criada ao cadastrar por exemplo:

 

O ultimo registro era:

id nome

80 Alguem

 

cadastrei e criou:

id nome

81 Outro Alguem

 

Então ele pega-se esse 81 e fizesse um insert em chamados colocando esse id=81 em id2, no mesmo momento em que cadastrar o interessado.

 

Tem como fazer isso ? http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

Abraços Walker http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Os 2 bancos estão no mesmo host?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa Join.

O fato dos campos terem o mesmo nome não interfere, você pode fazer assim:

 

FROM banco.tabela a JOIN banco2.tabela b

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não, foi apenas um exemplo. O b na verdade é um alias, um 'apelido' pra tabela.

 

-- aqui você pode colocar qualquer apelido, no caso 'idtabela1' é o campo id da tabela 'tabela' do banco 'banco2'
SELECT
   b.id AS idtabela1 
FROM 
   banco.tabela a JOIN banco2.tabela b ON (a.id = b.id)

Compartilhar este post


Link para o post
Compartilhar em outros sites

marcio.sfs você poderia me explicar o que ele está fazendo aqui ?

 

if($count > 0)

{

for($i=0; $i<count($result); $i++)

{

if(empty($result[$i]))

$empty = true;

}

}

$id_int = $result[0]['id'];

if($empty)

{

echo "<a href=\"form_interessados.php?mode=edit&id=".$result[0]['id']."\" target=\"_parent\" title=\"Visualizar Dados\">Incompleto</a>";

}

else if($count == 0 )

{

echo "<a href=\"form_interessados.php?mode=add&nome=".$result[0]['id']."\" title=\"Cadastrar interessado agora\">Não cadastrado</a>";

}

else

{

echo "<a href=\"form_interessados.php?mode=edit&id=".$result[0]['id']."\" target=\"_parent\" title=\"Visualizar Dados\">Cadastrado!</a>";

}

}

Porque eu coloco no link id=80 e ele só retorna 8... sabe me dizer poque ?

 

EDIT:

Consegui resolver!!! eeeeeeeee

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não, foi apenas um exemplo. O b na verdade é um alias, um 'apelido' pra tabela.

 

-- aqui você pode colocar qualquer apelido, no caso 'idtabela1' é o campo id da tabela 'tabela' do banco 'banco2'
SELECT
   b.id AS idtabela1 
FROM 
   banco.tabela a JOIN banco2.tabela b ON (a.id = b.id)

Sobre isso que você explicou, acho que tambem não server porque o primeiro banco é todo impresso com o mysql_fetch_object e o segundo banco eu só quero que ele pegue a id onde o nome do primeiro banco é igual ao nome do segundo banco.

 

?id=80&nome=Walker&codigo=193

 

Ele pega do primeiro banco o nome e o codigo, mas o id fica vazio, porque tem que ser do segundo banco... Então meu select está assim: SELECT * FROM chamados WHERE status LIKE '$filtro_inicial%' ORDER BY codigo DESC

 

Só preciso acrescentar a tabela interessados e selecionar o id desta tabela e nomear este id para não dar conflito para id2...

Consegue me ajudar ? http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

 

Abraços Walker http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

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.