Nícolas 4 Denunciar post Postado Maio 30, 2006 Seguinte, esse código é pra um sistema de banners que to fazendo para o meu site. Ta com estatisticas detalhadas, contas de usuários e etc. No BD banners tem as seguintes tabelas. Tabela: usuario Campos: id usuario senha site url Tabela: usuario_banners Campos: id id_usuario banner formato endereco limite ativo tipo Tabela: usuario_estatisticas Campos: id id_usuario id_banner tipo dia visualizacoes cliques Então, a parte de administração ta funcionando perfeitamente, agora to tentando botar o banner pra rodar no novo sistema do meu site. Só que ele não carrega os dados. Não aparece erro nenhum. Como eu faço para trazer os dados? Eu tentei assim mas não deu. $dados = " SELECT B.id AS id, B.id_usuario AS id_usuario, B.banner AS banner, B.formato AS formato, B.endereco AS endereco, B.limite AS limite, B.ativo AS ativo, B.tipo AS tipo, E.id AS id_estatisticas, E.id_banner AS id_banner, E.visualizacoes AS visualizacoes FROM usuario_banners B, usuario_estatisticas E WHERE B.id = E.id_banner AND (B.ativo = '1' AND (B.limite > E.visualizacoes OR B.limite = 'Ilimitado') AND B.tipo = 'banner') ORDER by RAND() LIMIT 1 "; $dados = select($dados,"banners"); $hp = mysql_fetch_array($dados); extrac($hp);No caso seria só fazer uma consulta aonde ele exibisse os dados do banners que estão ativos e o limite de exibições fosse menor que os exibidos até agora OU igual a ilimitado. Eu to aprendendo agora a usar novos comandos no SQL. Tentei aprender aquele LEFT JOIN e outros no manual do Mysql mas não entendi muito bem. Alguém da uma força aeee. DETALHE: Nessa query ele não trás nada, nem resultados e nem erros. Compartilhar este post Link para o post Compartilhar em outros sites
augustogava 0 Denunciar post Postado Maio 30, 2006 bem olhando assim parece que está correto, tem mesmo algum registro que entre nessas condições??? no seu mysql_query() coloca tb or die("Erro"); pegue o where : WHERE B.id = E.id_banner AND (B.ativo = '1' AND (B.limite > E.visualizacoes OR B.limite = 'Ilimitado') AND B.tipo = 'banner') e vai tirando partes até funcionar: WHERE B.id = E.id_banner AND (B.ativo = '1' AND (B.limite > E.visualizacoes) AND B.tipo = 'banner') se não funcionar tira mais....e continua até ir uahauh Compartilhar este post Link para o post Compartilhar em outros sites
Akwen 1 Denunciar post Postado Maio 30, 2006 Coloca assim pra ver... B.id = E.id_banner AND B.ativo = '1' AND B.limite > E.visualizacoes OR B.limite = 'Ilimitado' AND B.tipo = 'banner'Se nao funcionar, deve ser o apelido q você deu pros campos, ou então alguma dessas tabelas está vazia.Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
Nícolas 4 Denunciar post Postado Maio 30, 2006 Já sei qual foi o erro.Tava no ativo.Eu deveria ter colocado Sim ou invéz de 1.Vlw aee pessoal Compartilhar este post Link para o post Compartilhar em outros sites