Ir para conteúdo
Fórum Script Brasil

Vithor

Membros
  • Total de itens

    50
  • Registro em

  • Última visita

Tudo que Vithor postou

  1. cara, não dá pra entender muito do que você faz e quer nesse código aí... Mas, basicamente, pra trocar de TABLE pra DIV tudo o que você tem que fazer é tirar todas as tags <TABLE>, <TR>, <TD> e <TH> (se tiver), e trocar as <TR> por <BR />... Aí você vê como fica e vai usando espaçamentos, talvez definir outras DIVs dentro da principal...
  2. Vithor

    Data em formato BR

    Agora que eu vi... esse tópico tá duplicado... Amigão, já respondi a sua pergunta no outro tópico. Segue link: clique aqui
  3. Vithor

    Instrução SQL

    uma coisa que pode ser é o seu banco de dados... veja se a coluna DATA está no formato DATE ou DATETIME... pois senão ele estará comparando strings, aí não sei se funciona. Mesmo assim devia funcionar, pois se a string no BD for "2010-11-20" e você passar no sql a variável $ndata com valor "2011-11-20" ele é pra funcionar também, eu acho. Faz o seguinte, dá um ECHO na variável $sqele. Daí dá uma olhada na query... se for o caso, até copia a query, entra no banco de dados manualmente (via Painel do site, ou pelo próprio cliente SQL que você esteja usando) e coloque a query pra rodar direto no BD e veja os resultados. Poste aí o que que dá...
  4. Vithor

    Data em formato BR

    Bom, eu vou fazer o seguinte: eu vou criar uma função, para a qual você vai passar a sua string, no caso eu acho que é $item->pubDate e aí ela te devolve a data no formato dd/mm Vamos lá: function formataData($str) // recebe string no formato aaaa/mm/dd { $vetor = explode("/",$str); return $vetor[2]."/".$vetor[1]; } Aí pra você usar isso no seu código você faz: formataData($item->pubDate); // fazendo isso, se os nomes da suas variáveis estiverem certos claro, você teria a data em dd/mm por exemplo abraços!
  5. se deu certo, então beleza... O meu código não tinha funcionado, porque eu não sabia que as variáveis NÃO eram passadas, eu assumi que elas ERAM passadas, mas com o valor 0 caso não fosse nada... se você fizer o switch(null) como você fez, e a variável do $_GET não existir, ele vai dar certo pois ele vai comparar NULL com NULL. abraços! EDIT Cara eu vi que você colocou que está iniciando em PHP né... Seguinte: SWITCH() não é uma função, é uma estrutura de comparação... muito útil pra quando você tem que fazer vários IFs... a estrutura básica é a seguinte: switch($variavel) { case $valor1 : $chamaFuncao1(); $soma += 1; $fazMaisCoisas(); break; case $valor2 : $chamaFuncao2(); $soma += 2; $fazMaisCoisas(); break; [b]default[/b] : $chamaFuncaoPadrao(); $soma += 3; $fazMaisCoisas(); break; } Você pode ver que você faz switch(nome_da_variavel) { case valor_assumido_pela_variavel : acoes; break; } onde acoes podem ser várias coisas, não necessariamente é uma atribuição, ou uma chamada a uma função... é como se fosse um IF só que a "{" corresponde ao ":" do case e o "}" do IF corresponde ao "break;". Você pode ver também que neste último exemplo eu usei uma coisa chamada default. O default acontece caso nenhum dos "case" funcione. Ou seja, caso a $variavel não tenha $valor1, nem $valor2, as operações dentro do default são executadas. É como um último ELSE.
  6. Seguinte, CASO você realmente não possa converter a coluna para FLOAT, no BD por algum motivo, criei um script que faz a soma no formato que está aí: $valor1 = "3.250,00"; $valor2 = "250,00"; $valor3 = "1,50"; $soma_total = 0; $parte_inteira = str_replace(".","",substr($valor1, 0, strpos($valor1, ","))); $parte_decimal = "0.".substr($valor1, strpos($valor1, ",")+1, 2); $soma_total += (float)$parte_inteira + (float)($parte_decimal); $parte_inteira = str_replace(".","",substr($valor2, 0, strpos($valor2, ","))); $parte_decimal = "0.".substr($valor2, strpos($valor2, ",")+1, 2); $soma_total += (float)$parte_inteira + (float)($parte_decimal); $parte_inteira = str_replace(".","",substr($valor3, 0, strpos($valor3, ","))); $parte_decimal = "0.".substr($valor3, strpos($valor3, ",")+1, 2); $soma_total += (float)$parte_inteira + (float)($parte_decimal); // O valor de $soma_total é "3501.5" Daí se você quiser, chama a função que eu criei e ela te retornará: 3501,50 Teste aí!
  7. Cara, algumas coisas: if($_SESSION['cliente']['id_cliente']) // não seria: if(isset($_SESSION['cliente']['id_cliente'])) // ?? hmm, outra: mysql_query("SELECT * FROM cliente WHERE id_cliente = {$_SESSION['cliente']['id_cliente']}") pra que você tá usando aquelas chaves {$_SESSION...}?? Você tem certeza que isso tá certo? Eu nunca usei nada do tipo, talvez esteja e eu que não conheço... e a última, são os seus IFs: if($cp2['id_cliente_tipo'] = 1 and $cp2['tipo'] = 0) //... elseif($cp2['id_cliente_tipo'] = 2 and $cp2['tipo'] = 1) //... //... Você tem que usar dois iguais pra comparação no PHP, ou seja, ficaria assim: if($cp2['id_cliente_tipo'] == 1 and $cp2['tipo'] == 0) //... elseif($cp2['id_cliente_tipo'] == 2 and $cp2['tipo'] == 1) //... Testa essas mudanças aí, e posta o resultado! Abraços
  8. Vithor

    Alterar Limite Upload

    Cara, a variável safe_mode deve estar como OFF! Teste isso e poste novamente, se não der certo, tente entrar em contato com os responsáveis com a hospedagem, peça para eles realizarem testes, ou algo assim...
  9. Primeiro, eu acho que dá pra simplificar um pouco isso aí: switch(0) { case $a : $sql="SELECT * FROM tabela WHERE b='$b' AND c='$c' AND d='$d' "; break; case $b : $sql="SELECT * FROM tabela WHERE a='$a' AND c='$c' AND d='$d' "; break; case($a.$b.$c) : $sql="SELECT * FROM tabela WHERE d='$d' "; break; } $query=mysql_query($sql); $total=mysql_num_rows($query); Mas antes de testar isso, continue lendo porque tem uma outra coisa que eu acho que está errada. Você deve notar que no seu código, esses IFs seus estão sem as chaves {}, ou seja, na hora que você faz: if ($a == 0) $sql = ...; $query = ...; $total = ...; // coloquei "..." só pra exemplo. SOMENTE a variável $sql receberá o valor e a $query e o $total TERÃO VALORES! Ou seja, digamos que o $a é igual a 0 e que $a.$b.$c também é igual a 0, o filtro que será executado será o último ("SELECT * FROM tabela WHERE d='$d'"), já que você substitui os valores nas variáveis. Mas outra coisa, o que você pretende com esse 3º IF? Esse aqui: if ($a.$b.$c == 0) $sql="SELECT * FROM tabela WHERE d='$d' "; $query=mysql_query($sql); $total=mysql_num_rows($query); ???? Você quer saber se TODOS são 0? Eu acho que isso aí não vai dá certo não, porque você está CONCATENANDO as variáveis, portanto o valor de $a.$b.$c é igual a uma STRING (cujo valor seria "000" caso todos fossem 0), e não a um INTEIRO, como você está comparando ali em cima! Se você quer saber se TODOS os valores são 0, faz o seguinte (vou copiar o meu código, mas corrigindo essa parte): switch(0) { case $a : $sql="SELECT * FROM tabela WHERE b='$b' AND c='$c' AND d='$d' "; break; case $b : $sql="SELECT * FROM tabela WHERE a='$a' AND c='$c' AND d='$d' "; break; case($a+$b+$c) : $sql="SELECT * FROM tabela WHERE d='$d' "; break; } $query=mysql_query($sql); $total=mysql_num_rows($query); Dessa maneira, você estará SOMANDO as variáveis $a, $b e $c. Se a soma delas for 0, portanto, cada uma das variáveis vale 0. Ajudou em algo amigo? Teste e poste os resultados! Abraços
  10. Cara, o ideal seria se no BD você tivesse essas variáveis declaradas como FLOAT e daí você faria o seguinte: $query = mysql_query("select SUM(valor_compra) as soma FROM compras where id_prod='25'") or die (mysql_error()); // retorna a soma da coluna valor_compra onde o id_prod = 25. Funciona se a coluna valor_compra for FLOAT ou algum tipo de número... $cont = mysql_fetch_array($query); $total = $cont["soma"]; E eu já tive que tratar preços, converter . pra , e vice-versa. Tem uma função que eu criei, talvez seja útil, não sei: function trata_preco($str) // recebe preços como "21", "21.5" ou "21.51", de dados FLOAT vindos do BD, por exemplo { $return = $str; if(strpos($str,".") === false) // Preços "inteiros", sem centavos, por exemplo: "21" $return .= ",00"; else { if(strlen(substr($str,strpos($str, "."),strlen($str)-strpos($str, "."))) == 2) // Preços que contém dezenas de centavos inteira, por exemplo: "21.5", adiciona o "0" no final $return .= "0"; $return = str_replace(".",",",$return); // Após o IF acima todos os tipos de preço ficam da seguinte forma: XXXXXX.XX, por ex.: "21.50". Aí só substitui o "." pela "," } return $return; } Daí você poderia chamar a função ela te retorna o preço num formato para exibição, ou seja, de uma maneira amigável ao usuário. Não sei se vai te ajudar em alguma coisa, mas tá aí. Se precisar de mais coisas, posta aí, ou se não funcionar, sei lá...
  11. Vithor

    Alterar Limite Upload

    Então o problema deve ser com o servidor como eu falei. Se não funcionar, contate o administrador de hospedagem e peça pra ele fazer testes com arquivos maiores que 3Mb. E veja se a função phpinfo() mostra que as variáveis de post_max_size e upload_max_filesize estão realmente com os valores que você setou.
  12. Vithor

    Alterar Limite Upload

    O problema persiste com arquivos menores? se sim, tente entrar em contato com os responsáveis pela hospedagem. Se não, então o problema é contigo meu chapa! Tenta dar uns ECHO's nas variáveis, tipo o caminho do upload, às vezes ele tá errado... você viu se o próprio nome do arquivo está certo? Lembre-se que para fazer o upload, o arquivo novo deve possuir a extensão também. Não adianta só você fazer: move_uploaded_file($tmp, $pasta.$nome); se a variavél $nome não estiver no formato: "nome.ext". Tipo, se for uma imagem, tem que ficar: "imagens/imagem1.jpg", por exemplo. Não precisa ficar em JPG, mas tem que ter a extensão... verifica todas as variáveis. Se ainda der erro a gente tá falando de coisa grande... tipo, ou a sua conexão tá lenta ou não é boa o suficiente pra se manter estável durante todo o envio do arquivo, e aí o arquivo fica corrompido ou o servidor reinicia a conexão. Ou então, mesmo se você tiver colocado o post_max_size = 10M upload_max_filesize = 10M no php.ini eu acho que isso não funciona se o safe_mode do PHP estiver habilitado. Use a função phpinfo() para verificar as configurações do seu servidor... Tenta essas coisas e posta aí...
  13. Opa pessoal! Eu estava certo... o problema era mesmo com o Windows. A anta aqui tava setando as permissões de pasta direto no Cliente FTP. Adivinha, o cliente FTP usa CHMOD, comando que não é reconhecido pelo Windows, obviamente. Ao entrar em contato com a Locaweb eles me instruíram a realizar esse procedimento (de setar permissões) direto pelo Painel de Controle deles, e aí funcionou tudo certinho. Espero que se alguém no futuro tenha esse problema, já tem alguma noção de como resolver... Abração pessoal! Valeu aí por tudo ;D Edição: SK15, não tinha visto a sua resposta antes de entrar em contato com a Locaweb, mas vi agora! Era isso mesmo amigo!
  14. Opa cara! Então, esse é um sistema que já existia antes de eu trabalhar aqui, e eu nunca "investiguei" ele completamente e a fundo... Então tipo assim, essa linha de ECHO foi só pra testes meus, pra postar aqui o que mostrava... Basicamente, essa concatenação toda aí, é pra obter o caminho da nova pasta (mais áreas tem upload, e daí eu só mudo a variável, mas essa parte do código é igual pra todas...). Eu tentei o move_uploaded_file() e deu dois erros daí: PHP Warning: move_uploaded_file(<CAMINHO>) [<a href='function.move-uploaded-file'>function.move-uploaded-file</a>]: failed to open stream: Permission denied in <ARQUIVO_DE_UPLOAD> on line 106 PHP Warning: move_uploaded_file() [<a href='function.move-uploaded-file'>function.move-uploaded-file</a>]: Unable to move 'C:\WINDOWS\Temp\php2B57.tmp' to '<CAMINHO>' in <ARQUIVO_DE_UPLOAD> on line 106 O que eu achei estranho foi ele ter mostrado o caminho temporário de onde a imagem foi colocada (C:\Windows\...)... será que tem algum problema com o servidor? Acho que não, né? Alguma sugestão? Só mais algumas coisas: if(isset($_FILES["foto"]["tmp_name"])) { $imagemTmp = $_FILES["foto"]["tmp_name"]; $ext = getExt($imagemTmp); $_POST['_ext'] = $ext; } //depois de algumas linhas insignificantes pra esse erro...: if(isset($_FILES["foto"]["tmp_name"])) { $id = mysql_insert_id(); move_uploaded_file($imagemTmp, $pasta.$pre."_".$id.".".$ext); thumbMaker($pasta.$pre."_".$id.".".$ext, 1000, 0, $pasta); thumbMaker($pasta.$pre."_".$id.".".$ext, 400, 1, $pasta); thumbMaker($pasta.$pre."_".$id.".".$ext, 65 , 2, $pasta); @unlink($pasta.$pre."_".$id.".".$ext); } EDIÇÃO: Galera, como vocês viram o servidor é Windows. estou começando a achar que é esse o problema. Não sei porque, mas parece que o Windows tá tendo problemas com o PHP, em alguma forma. Vou entrar em contato com a Locaweb enquanto não há novas respostas...
  15. Sim, dei ECHO nisso: echo $pasta.$pre."_".$id.".".$ext; // retorna: uploads/noticia/noticia_28.jpg Essa pasta existe, tá tudo certo, mas dá o erro ainda :S E esse erro dá em TODAS as áreas, tipo, o que eu tenho aí em cima é a parte de cadastro de notícias. Mas tem cadastro de mais outras coisas que permitem o envio de imagens e também dá erro...
  16. Bom, antes de tudo: SIM, EU JÁ MUDEI TODAS AS PERMISSÕES DE TODOS OS DIRETÓRIOS E ARQUIVOS NO FTP PARA 777 (FULL READ/WRITE)! Ok, agora vamos ao que interessa: Eu tenho um gerenciador que a hora que eu vou fazer o upload de imagens ele dá o erro: PHP Warning: copy(uploads/noticia/22.jpg) [<a href='function.copy'>function.copy</a>]: failed to open stream: Permission denied in <NOME_ARQUIVO> on line 105 A linha 105 é a seguinte: copy($imagemTmp, $pasta.$pre."_".$id.".".$ext); Essas variáveis, eu já dei ECHO em todas, e estão todas com valores corretos... Alguém tem alguma idéia? Só mais um detalhe: eu já dei um echo phpinfo(); pra ver se as variáveis de upload estão habilitadas, com tamanho máximo que permita o envio das fotos (a foto tem menos de 1mb, massss...).
  17. Seria bom você postar a mensagem de erro que o compilador/programa dá... Não sei se você tá usando o Delphi, ou o Turbo Pascal, não sei qual programa, mas eu tenho certeza que ele deve gerar um erro, e talvez uma linha pra esse erro, que geralmente é mais ou menos assim: Error <MENSAGEM>...................... on line XX, ou, Error <MENSAGEM>......................:XX Onde MENSAGEM é a mensagem de erro e XX é o número da linha que origina esse erro.
  18. Vithor

    Função eval + Array em PHP

    No fim eu consegui, o resultado final tá um pouco diferente do que você falou (e claro que eu não botei as palavras-chave REAIS) mas enfim... Tá aí se alguém mais precisar: $paginas = array(); $paginas["sobre"] = array("palavra 1", "palavra 2", "palavra 3"); $paginas["eventos"] = array("palavra 1", "palavra 2", "palavra 3"); $paginas["fale"] = array("palavra 1", "palavra 2", "palavra 3"); $paginas["presenca"] = array("palavra 1", "palavra 2", "palavra 3"); $paginas["principal"] = array("palavra 1", "palavra 2", "palavra 3"); $paginas["aplicacao"] = array("palavra 1", "palavra 2", "palavra 3"); $paginas["produtos"] = array("palavra 1", "palavra 2", "palavra 3"); $paginas["qualidade"] = array("palavra 1", "palavra 2", "palavra 3"); $array2 = array(); $array2[0] = "Sobre a Empresa"; $array2[1] = "Eventos"; $array2[2] = "Fale Conosco"; $array2[3] = "Presen&ccedil;a Global"; $array2[4] = "Principal"; $array2[5] = "Aplica&ccedil;&atilde;o"; $array2[6] = "Produtos"; $array2[7] = "Qualidade"; $cont = 0; $result = "resultados encontrados:<br /><br />"; $i = 0; foreach ($paginas as $local => $words) { if (in_array($campo, $words)) { $result .= "<img src='img/seta.png' style='margin-bottom : 3px;' /> <a href='./?navega=$local' class='gray' style='font-size:12px'>$array2[$i]</a><br />"; $cont++; } $i++; } if($cont != 0) echo "<font class='black'>".$cont." ".$result; else echo "<font class='black'>N&atilde;o foram encontrados resultados.</font>";
  19. Vithor

    Função eval + Array em PHP

    Ok, valeu cara! Não tinha pensado dessa forma! Mas tem uma coisa só agora: Eu tenho um outro vetor: $array2 = array(); $array2[0] = "Sobre a Empresa"; $array2[1] = "Eventos"; $array2[2] = "Fale Conosco"; $array2[3] = "Presen&ccedil;a Global"; $array2[4] = "Principal"; $array2[5] = "Aplica&ccedil;&atilde;o"; $array2[6] = "Produtos"; $array2[7] = "Qualidade"; Você pode ver que ele contém os nomes de cada página, que substituiria a variável $local usada por você ali em cima. Eu tenho que escrever o valor de acordo, ou seja, se ele achar no vetor $paginas (o meu código tá igual o que você colocou) no índice "sobre", ele tem que escrever <a href='sobre.php'>$array2[0]</a> Como eu faço pra pegar o nome do índice do vetor $paginas (pra usar no HREF da tag <a>) e como eu pego o índice certo do $array2 pra escrever o nome correspondente?
  20. Oi galera! Acabei de postar uma dúvida sobre busca, a qual eu mesmo resolvi. O problema é que a partir dela eu tenho outra. Pra fazer o sistema de busca do site vou usar várias variáveis, que contém palavras chave de cada página. Ou seja, a variável $sobre vai ser uma string + ou - assim: "sobre nos empresa historia", enfim, vocês entenderam. O problema é que é uma busca, e eu tenho que escrever todos os resultados encontrados. Para tanto cheguei ao seguinte: $sobre = "empresa historia sobre nos"; $array = array(); $array[0] = "\$sobre"; $array[1] = "\$eventos"; $array[2] = "\$fale"; $array[3] = "\$presenca"; $array[4] = "\$principal"; $array[5] = "\$aplicacao"; $array[6] = "\$produtos"; $array[7] = "\$qualidade"; for($i = 0; $i<8; $i++) if(strpos(eval($array[$i]), $campo) !== false) { // tratar... } Como vocês podem ver acima, eu tenho uma (só de exemplo, no site mesmo são várias) variável, chamada $sobre. Aí eu tenho um vetor que contém todas as variáveis de cada página. E cada uma dessas variáveis contidas no vetor, possuem as respectivas palavras chave que são usadas na busca do site. O problema se dá na linha do IF. O que eu preciso fazer é usar, como VARIÁVEL, o valor que está dentro do $array[$i]. Ou seja, eu quero que depois do uso da função EVAL() eu tenha a seguinte linha (trocar a linha com a função eval() pela seguinte): // linha "traduzida" pelo eval() if(strpos($sobre, $campo) !== false) Como isso tá num FOR, a cada vez o IF seria diferente, pois a variável em questão do vetor seria diferente. Na próxima iteração a linha traduzida seria, de acordo com a ordem do vetor, a seguinte: // linha "traduzida" pelo eval() if(strpos($eventos, $campo) !== false) E assim por diante. Ou seja, o FOR é usado pra saber se o valor que o usuário digitou no campo de busca (no caso a variável $campo contém esse valor) está contido em algum lugar do site, de acordo com as palavras chave das variáveis. Entenderam o que eu quero fazer? Só que aí eu obtenho o erro: "Parse error: syntax error, unexpected $end in <CAMINHO>/busca.php(73) : eval()'d code on line 1" A linha 73 se trata justamente da linha do IF, onde está a função EVAL(). Alguém pode me ajudar?
  21. Vithor

    Busca PHP

    Bom pessoal, procurando um pouco no pai dos burros, vulgo Google, eu achei o site: http://filosofiadevida.marcocarvalho.com/r...-php-enconding/ e a solução dele resolveu o problema "parcialmente". Eu consegui remover os acentos e as cedilhas da string do campo, que vem por GET. O ideal seria se desse pra substituir por acentos, mas eu tentei e dá pau, provavelmente por causa da codificação. Portanto, eu acho que eu vou acabar fazendo algumas strings "keywords", que contenham palavras chave de cada área do site, e nelas eu NÃO vou usar acentos, e aí o campo vai estar sem acento também, e aí vai achar. Valeu pessoal! Pode fechar ;D
  22. Vithor

    Busca PHP

    Opa! Então, isso seria praticamente a mesma coisa que eu pensei, a única diferença é que essa função realmente pega a página toda. Não sei se é isso o que eu quero, mas legal, é uma opção. Mas o problema dos acentos continua. Fiz um teste pegando o campo por GET e procurando ele na págnia "sobre.php" por exemplo, e não achou quando tinha acentos. Ao usar htmlentities("América") (postei isso num 'alert' em JS) recebo o seguinte: Am&Atilde;&copy;rica Ou seja, ele substituiu "é" por "&Atilde;&copy;". Eu sei que acentos possuem algo como "dois códigos ASCII" ou coisa assim, mas alguma idéia de como traduzir essas porcarias de acentos?
  23. Vithor

    Busca PHP

    Oi pessoal! Eu sei que já tem alguns tópicos sobre busca aqui no fórum, eu pesquisei, mas nenhum consegue me ajudar (tem um que tem a mesma dúvida mas não foi respondida :S). Eu tenho um site em que a ÚNICA tabela do BD é a de notícias (ou seja, único conteúdo gerenciável do site). Fazer a busca em notícias eu sei, é fácil. Usando SQL e a cláusula LIKE é sussegado. O meu problema é quanto ao resto do site. Eu preciso fazer uma busca no CONTEÚDO do site, ou seja, em tudo que tiver de texto em todas as páginas. A minha idéia é criar uma string enorme com várias palavras chaves para cada "área" e depois fazer um "strpos" em cada string. Basicamente: $campo = strtolower($_GET["busca"]);; $str = "sobre empresa informações about us instituição institucional"; $haResult = false; if(strpos($str, $campo) !== false) { echo "Resultado encontrado em 'Sobre'"; $haResult = true; } ... // fazer isso para as outras áreas do site... if(!$haResult) echo "Não foram encontrados resultados para a sua pesquisa."; Usei algumas palavras em inglês pois o site possui 3 versões (portuguesa, inglesa e espanhola...). O problema se dá no uso de acentos e "caracteres especiais". Digamos que o usuário busque pela palavra "informações". Pelo teste que eu fiz, o site não acha resultado. Já tentei fazer vários "str_replace" nos acentos e substituir "õ" por "õ", por exemplo, e assim por diante. Vocês tem alguma idéia de como resolver esse problema? A página de busca no caso é incluída (include) pela "index.php". Na index, eu tenho a seguinte tag: <meta http-equiv="Content-type: text/html; charset=utf-8;"> E em TODAS as páginas do site eu tenho os acentos feitos na forma HTML, ou seja, 'á' vira 'á'; 'é' vira '&eeacute;'; 'ç' vira 'ç'; e assim por diante. Alguém ajuda?
  24. Olá pessoal! Este é meu primeiro tópico aqui no fórum. Estou montando um site, e, o CSS dele tá meio zuado, mas pra remendar e colocar o site no ar o mais rápido possível, não posso refazer o site todo, todas as divs, etc. Cheguei portanto a uma única solução para o meu problema: Javascript. Tenho um rodapé, que está dentro de uma DIV e ele tem que ficar lá embaixo sempre. Já tentei todas as opções, clear, float, position, bottom : 0, e tudo mais. Já vi tudo que é fórum, e os que dão certo, eu tenho que desconfigurar o resto do site. Portanto, vamos ao que interessa. página com a função original O link acima demonstra como detectar quando a barra de rolagem chega ao fim da página. E, caso a página não tenha rolagem, aí é simples de fazer o rodapé. Mas caso ela tenha, eu teria que fazer o seguinte: colocar a DIV rodapé com visibility : hidden; e quando detectar que a barra está no final, colocar o rodapé com visibility : visible; Talvez não funcione, devido à posição e tudo mais, mas é meu último recurso. Se for necessário, eu reanalizarei o código, mas só se o script não funcionar. Preciso realmente colocar o site no ar "ASAP". Então, o básico: Se vocês não quiserem acessar o link acima, a função é essa: (jQuery eu acho, coisa que eu não entendo muito...) &lt;script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript"> $(document).ready(function() { $("#tudo").scroll(function() { //div com id="tudo" if ($(this).scrollTop() + $(this).height() == document.getElementById('tudo').scrollHeight) { // aqui entra o código para deixar a visibility : visible; algo do tipo: var rodape = document.getElementById("rodape").style; rodape.visibility = "visible"; } }); }); </script> Só tem um problema: eu tenho essa DIV tudo no meu site, só que o tamanho dela não corresponde ao real tamanho da página (estou usando várias coisas com position : absolute;, enfim). Eu teria que colocar esse negócio pra "ouvir" o <body>. Como se o body fosse a DIV, e eu já tentei colocar um ID no <body> mas não funcionou. Alguém pode me ajudar por favor? Valeu galera!
×
×
  • Criar Novo...