alissonxx 0 Denunciar post Postado Maio 28, 2009 galera seguinte... eu tenho uma tabela chamada radchecks(cadastro dos usuarios) e uma chamada radreplies(estados do usuario) eu tenho que verificar os usuarios que estao ativos no sistema para o usuario estar ativo, ele tem que seguir essas condições 1)radchecks.UserName deve estar cadastrado 2)radchecks.UserName pode ter um estado na tabela radreplies.Attribute, que pode ser IP ou Estar Bloqueado. 3)para ele estar bloqueado: radchecks.UserName deve ser igual a radreplies.UserName, se eles sao iguais ele verifica se radreplies.Attribute é igual a 'poolnegado' se for.. o cara ta bloqueado. mas, eu quero selecionar apenas os ativos .. e preciso fazer via mysql alguem poderia me ajudar? segue o código que eu fiz. "SELECT * FROM radchecks LEFT JOIN radreplies ON radreplies.UserName=radchecks.UserName AND radreplies.Empresa=radchecks.Empresa WHERE radchecks.Empresa='$empresa_escolhida' AND radreplies.Attribute<>'Framed-Pool' lembrando que ele tem q ignorar os bloqueados e somente mostrar os ativos Compartilhar este post Link para o post Compartilhar em outros sites
hgb7 3 Denunciar post Postado Maio 29, 2009 http://under-linux.org/f112329-php-mysql-select-radreply Espero que ajude :) Compartilhar este post Link para o post Compartilhar em outros sites
alissonxx 0 Denunciar post Postado Maio 29, 2009 nao ajudou mto, nao axei nada sobre o join Compartilhar este post Link para o post Compartilhar em outros sites
alissonxx 0 Denunciar post Postado Maio 29, 2009 tentei de várias formas, mas não consegui SELECT * FROM radchecks JOIN radreplies ON radchecks.UserName = radreplies.UserName OR radreplies.UserName=null WHERE radreplies.Value<>'pool_acessonegado' OR radreplies.Value=null Compartilhar este post Link para o post Compartilhar em outros sites
hgb7 3 Denunciar post Postado Maio 29, 2009 "SELECT radcheck.id, radcheck.UserName, radcheck.Attribute, radcheck.Value FROM radcheck inner join radreply on radcheck.username=radreply.username WHERE radreply.Username = '%{SQL-User-Name}' and radreply.Attribute='session-timeout ' and radreply.Value>0 ORDER BY radcheck.id" Ajuda? Compartilhar este post Link para o post Compartilhar em outros sites
alissonxx 0 Denunciar post Postado Maio 29, 2009 "SELECT radcheck.id, radcheck.UserName, radcheck.Attribute, radcheck.Value FROM radcheck inner join radreply on radcheck.username=radreply.username WHERE radreply.Username = '%{SQL-User-Name}' and radreply.Attribute='session-timeout ' and radreply.Value>0 ORDER BY radcheck.id" Ajuda? ajuda sim, vou tentar te explicar como funciona... a tabela radchecks sao cadastros de usuarios, a tabela radreplies sao estados do usuario. o que liga as tabelas é o campo UserName. eu preciso ver o seguinte, mostrar os usuarios que nao estao bloqueados... para o cara estar bloqueado ele deve ter um registro na tabela radreplies onde o campo Attribute='Framed-Pool' se possui esse registro ele está bloqueado, mas... na mesma tabela o cliente pode ter outros estados como IP e rota... entao.. para o cara estar liberado ele pode nao ter nenhum registro na radreplies ou ter estados como ip e rota para estar bloqueado deve ter o registro de framed-pool na radreplies esse codigo que fiz no mysql deveria funcionar SELECT * FROM radchecks //seleciona cadastro de clientes JOIN radreplies //adiciona estados de cliente ON radchecks.UserName = radreplies.UserName OR radreplies.UserName='' //o nome de usuario pode ser igual nas 2 tabelas ou a tabela pode nao ter o registro do usuario, WHERE radreplies.Attribute<>'Framed-Pool' OR radreplies.Attribute='' //verifica se //verifica se o atributo é framed-pool ou a tabela nao pode ter o registro, entao o cara ta liberado GROUP BY radchecks.UserName Compartilhar este post Link para o post Compartilhar em outros sites