Ir para conteúdo

POWERED BY:

Arquivado

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

Fox_paraty

Preciso fazer uma consulta a 2 tabelas

Recommended Posts

TEnho o seguinte código:$res=mysql_query("SELECT permicoes.id_permicoes, permicoes.id_usuario, permicoes.id_departamento departamento.id_departamento, departamento.departamento FROM permicoes INNER JOIN departamento ON permicoes.id_departamento=departamento.id_departamento WHERE id_usuario=".$_SESSION['id_usuario'] . " ORDER BY id_departamento"); while($registro=mysql_fetch_row($res)) { $id_permicoes=$registro[0]; $id_usuario=$registro[1]; $id_departamento=$registro[2]; echo"<option value=\"$id_departamento\">" .$departamento . "</option>\n"; }Só que essa consulta não mostra nada!!!!Alguém pode me ajudar?????

Compartilhar este post


Link para o post
Compartilhar em outros sites

SELECT P.id_permicoes, P.id_usuario, P.id_departamentoD.id_departamento, D.departamentoFROM permicoes P INNER JOIN departamento D ON P.id_departamento=D.id_departamento WHERE P.id_usuario=".$_SESSION['id_usuario'] . " ORDER BY D.id_departamentotente issu ae

Compartilhar este post


Link para o post
Compartilhar em outros sites

provavelmente a variavel $_SESSION não existe ...2 coisas:1 - depois da consulta, coloca um ) or die(mysql_error());2 - se for php 5, use mysqli ! Não aguento mais falar isso :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

issu dê um echo na variavel session... e ve se ela retorna alguma coisa....se naum retornar nada, o erro esta no login, na hora de gravar o valor na session

Compartilhar este post


Link para o post
Compartilhar em outros sites

$sql = "SELECT P.id_permicoes, P.id_usuario, P.id_departamento, D.id_departamento, D.departamento FROM permicoes P INNER JOIN departamento D ON P.id_departamento=D.id_departamento WHERE P.id_usuario='".$_SESSION['id_usuario']."' ORDER BY D.id_departamento";tente desse jeito aki..., você estava usando aspas duplas no session....da um echo $sql;exit;e ve o que ele mostra no sql.. ve se ele mostra os resultados certinhu..dps você da um $qr = mysql_query($sql) or die (mysql_error());$total = mysql_num_rows($qr);echo $total;exit;e ve se ele retorna algum valor (0, naum selecionou nenhum reistro, >0, o numero de registros q ele encontrou no select...tenta ae..abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nada...Vou mandar o código pra você ver...<td colspan="6"><select name=id_departamento> <?$sql = "SELECT P.id_permicoes, P.id_usuario, P.id_departamento, D.id_departamento, D.departamento FROM permicoes P INNER JOIN departamento D ON P.id_departamento=D.id_departamento WHERE P.id_usuario='".$_SESSION['id_usuario']."' ORDER BY D.id_departamento"; while($registro=mysql_fetch_row($sql)) { $id_permicoes=$registro[0]; $id_usuario=$registro[1]; $departamento=$registro[2]; echo"<option value=\"$id_departamento\">" .$departamento . "</option>\n"; }echo"</option>\n"; ?> </select></td>

Compartilhar este post


Link para o post
Compartilhar em outros sites

voce fez oque eu escrevi!?

 

A maiorias das dúvidas que eu vejo no forum hoje, seriam resolvidas facilmente se a galera aprendesse a debugar códigos ....

 

Mesmo o debug sendo amador, aqueles echo aqui, echo ali .... ja ajuda pra caramba ....

 

faz oque eu disse ....

usa mysql_query ( 'consulta' ) or die (mysql_error());

 

Se a consulta estiver errada, isso gera um "warning" do mysql ...

 

Antes da consulta, tb aconselho voce der um print_r($_SESSION); dessa forma voce verá todas as váriaveis registradas na sessão ...

e se por acaso o print_r não retornar nada ... verifique se voce inicializou a sessão com session_start(); no começo de tudo

 

---edit---

 

provavelmente voce não esta usando session_start();

Compartilhar este post


Link para o post
Compartilhar em outros sites

meu caro, você naum executou a querytenta issu ae<td colspan="6"><select name="id_departamento"><?$sql = mysql_query("SELECT P.id_permicoes AS 'p_id_permicoes', P.id_usuario AS 'p_id_usuario', P.id_departamento AS 'p_id_departamento', D.id_departamento AS 'd_id_permicoes', D.departamento AS 'd_id_permicoes' FROM permicoes P INNER JOIN departamento D ON (P.id_departamento = D.id_departamento) WHERE P.id_usuario='".$_SESSION['id_usuario']."' ORDER BY D.id_departamento") or die (mysql_error());while($registro=mysql_fetch_array($sql)){ $id_permicoes=$registro['p_id_permicoes']; $id_usuario=$registro['p_id_usuario']; $departamento=$registro['p_id_departamento'];?> <option value="<?=$id_departamento?>"><?=$departamento?></option><? } ?></select></td>verifique tb se esta incluindo o arquivo de conexão.. heheh (coisa idiota mais as vezes....)e usa sempre o or die (mysql_error()), sem ele, você naum sabe se deu erro ou naum retoprnou nda...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou mandar tudo mastigadinho pra vê se alguém consegue encontrar o erro...Tenho as seguintes tabelas...tabela usuariosid_usuarionomedepartamentoTabela permicoesid_permicoesid_usuarioid_departamentotabela departamentoid_departamentodepartamentoQuando eu logo o sistema, entro como usuario id 65...Quro consultar todos os departamentos que existem, para que eu possa dar permicoes.$sql = ("SELECT P.id_permicoes, P.id_usuario, P.id_departamento, D.id_departamento, D.departamento FROM permicoes P INNER JOIN departamento D ON P.id_departamento=D.id_departamento WHERE P.id_usuario='".$_SESSION['id_usuario']."' ORDER BY D.id_departamento");while($registro=mysql_fetch_row($sql)) { $id_permicoes=$registro[0]; $id_usuario=$registro[1]; $departamento=$registro[2]; echo"<option value=\"$id_departamento\">" .$departamento . "</option>\n"; }Opa...Acho que aGORA FOI....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara,Depois de todas essas dicas, quem deve dizer agora foi sou eu!da uma olhada em todos os posts desse tópico ...Frita o cérebro ae ... VOCE tem capacidade para encontrar e resolver o erro ... não tem segredo nenhum seu script

Vou mandar tudo mastigadinho pra vê se alguém consegue encontrar o erro...Tenho as seguintes tabelas...tabela usuariosid_usuarionomedepartamentoTabela permicoesid_permicoesid_usuarioid_departamentotabela departamentoid_departamentodepartamentoQuando eu logo o sistema, entro como usuario id 65...Quro consultar todos os departamentos que existem, para que eu possa dar permicoes.$sql = ("SELECT P.id_permicoes, P.id_usuario, P.id_departamento, D.id_departamento, D.departamento FROM permicoes P INNER JOIN departamento D ON P.id_departamento=D.id_departamento WHERE P.id_usuario='".$_SESSION['id_usuario']."' ORDER BY D.id_departamento");while($registro=mysql_fetch_row($sql)) { $id_permicoes=$registro[0]; $id_usuario=$registro[1]; $departamento=$registro[2]; echo"<option value=\"$id_departamento\">" .$departamento . "</option>\n"; }Opa...Acho que aGORA FOI....

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.