
Halfar
Membros-
Total de itens
542 -
Registro em
-
Última visita
Tudo que Halfar postou
-
Onload Com Infinitos Recarregamentos De Pagina
pergunta respondeu ao Halfar de Halfar em Ajax, JavaScript, XML, DOM
nada de cookies meu caro, fuja dos cookies o máximo que voce puder. Inclusive as variáveis de sessão que utilizam cookies, evite tambem, porque o navegador do usuário pode estar com os cookies desabilitados... -
Ola, Muito grato pela sua resposta franca, é mesmo assim com palavras sinceras é que a gente pode solucionar problemas. Eu realmente não sabia que tinha que especificar uma versão de linguagem no codigo Java Script. Mas mesmo assim, após ter postado aquele tópico, andei vasculhando pela internet a respeito deste assunto e me deparei com um site onde voce submete a sua url e a url é testada em vários navegadores, em várias diferentes versões de navegadores, sob os diversos sistemas operacionais e suas versões. E o que ocorreu, um site que fiz, que tem uma boa dose de java script, e um uso considerável de estilos, este site foi aprovado em todos os navegadores sob todos os sitemas operacionais. E olha que no meu codigo eu não faço menção do java script naquele modo como voce nos indicou que fosse feita, e creio que é a maneira correta mesmo o seu modo, pois já que se permite informar a versão então deve ser informada mesmo. Mas agora aqui, enquanto digito estas linhas, me vem a mente uma dúvida: Se eu informar, por exemplo, a versão Java Script 1.5, isto quer dizer que se o navegador do usuário tiver uma versão js inferior, pode resultar em problemas? Meio complicada esta história. Mas voltando ao assunto anterior, quando dizia que submeti meu site para testes em vários navegadores, me deparei com uma outra situação quando submeti um segundo site, que NÃO TEM JAVA SCRIPT, mas usa bastante os estilos. Sabe o que foi que aconteceu? Reprovado em todos os navegadores, sob diferentes versões e sistemas operacionais. Foi aceito apenas no IE. Então deduzi que o grande problema não é o Java Script, e sim os estilos. Os estilos que utilizei neste site são do tipo assim: <p class = "p1"> . Nesta página tem uns 4 estilos deste tipo. Então continuei minha saga em procura de resposta do porque deste tipo de problema, e dei uma analisada no codigo fonte deste proprio portal, porque aqui se usa uma boa dose de estilos e notei que eles não usam os estilos conforme citei acima, colocam os estilos dentro de tabelas ou de divs, assim : <table class = "p1"> e idem para as divs. E este site não tem problemas com navegadores. Então agora, pretendo nos proximos dias dar uma reformulada nesta minha página que foi reprovada em todos os navegadores, e adotar o critéiro assim, porém evitando de usar tabelas. E ultimamente tenho evitado ao máximo no uso de tabelas, e procurando usar sempre tableless (estilos), porque pelo o que tenho estudado do assunto, o google tem dificuldades em indexar site que usam tabelas, isto segundo infomação que extrai de um livro sobre tableless, onde o autor afirma que se deve utilizar mais tableless e menos tabelas, justamente pelo problema apontado acima. Bem, grato pela sua atenção, agora vou vasculhar este site em procura de soluções para outros problemas que estou tendo... Abraços.
-
coloquei o seguinte codigo na página x.php. <body onLoad = "document.form1.submit(); "method="post" action="CadNumIndice.php" bgcolor="#FFFFFF" text="#000000"> então, pelo codigo acima, após a pagina ser processada ela deve ser redirecionada para CadNumIndice.php, mas ocorre que ela está dando infinitos refreshs na própria pagina x.php... porque está ocorrendo isto?
-
Bom, o codigo da página em questão segue abaixo: Inicialmente o codigo do arquivo css: Agora o arquivo onde consta os codigos do programa, a parte em negrito é a caixa que não está funcionando, interessante notar que ela é a única caixa que puxa dados do banco de dados e é ela que não está funcionando (notei isto agora), mas como funciona normal no IE, então não é este o problema..., creio que é alguma incompatibilidade de navegador com estilos css...
-
Ola rajneesh, Obrigado pela sua resposta. Apenas esclarecendo, referente a ultima parte de sua resposta, onde voce diz: "acho pouco provável que o código que você tenha usado antes da atualização do FF tenha mostrado falha por causa de incompatibilidade de versão" Esclarecendo, a falha ocorreu após atualização e não antes, ou seja, antes da atualização do FF, o codigo funcionava corretamente com o JavaScript, após atualizarem o FF começou a dar problemas no JavaScript, e saliento que, conforme disse anteriormente, a empresa atualizou o FF mas não atualizou o JavaScript, então não é falha do FF e sim falha do JavaScript (na realidade foi mais falha do operador que não atualizou o JavaScript). E aqui, aproveitando o gancho, me pergunto: será que o JavaScript não foi atualizado porque não tinha uma nova versão pronta? É justamente neste tipo de situação que creio que não se deve estar atualizando os navegadores a torto e a direito... Obrigado.
-
Estive dando uma pesquisada neste assunto (inncompatibilidade entre navegadores, JavaScript e css) e o problema é sempre o mesmo, funciona no IE mas não funciona no FF. Lendo um livro de JS sobre o assunto, o autor diz que as versões tem que ser compativeis, ou seja, versão do navegador FF tem que ser compatível com a versão do JavaScript. Por exemplo, se voce tem a versão 1.0 do FF, então precisa ter a versão 1.0 do JavaScript (os números destas versões são apenas hipotéticos, é claro que a versão de um pode ser 1.0 e a versão de outro pode ser 2.0, mas tem que ser compatíveis.). Um exemplo disto ocorreu na empresa onde trabalho, eu tenho um programa lá que rodava legal no IE e no FF. Aí, atualizaram a versão do do navegador FF, ai os codigos JavaScript pararam de funcionar. Porque? Me parece que ao atualizarem a versão do FF, não tiveram a preocupação de atualizarem a versão do JavaScript. Aí deu pau mesmo. Citando novamente o autor do livro que li sobre JavaScript, ele diz que pode ocorrer um lapso de tempo razoavelmente grande entre a nova versão do FF e a nova versão do JavaScript, ou seja, se tem uma nova versão do FF pronta, mas pode não ter uma versão do JavaScript ainda pronta, e pode demorar um bom tempo até que esta nova versão do JavaScript fique pronta. Sendo assim, me parece meio perigoso ter sempre a última versão na sua máquina, a não ser que esta ultima versão já esteja no mercado há um bom tempo. Gostaria de ver opiniões sobre o assunto. O que acham? Obrigado a todos que participarem deste assunto.
-
Tenho alguns estilos css na minha página, são coisas simples, apenas algumas caixas onde coloco texto e objetos dentro dela. Ocorre que funciona legal no IE, já no FF não funciona. O problema está ocorrendo no menu de lista, no IE todos os itens do menu são listados, já no FF apenas o primeiro item do menu, os demais não aparecem... como posso resolver isto?
-
Fiz um programa de cadastro que contem variaveis de sessão. Os dados recuperados do formulário são armazenados em variáveis de sessão e gravados no BD. Ocorre que, não entendemos o por que, de repente os dados não são mais gravados no BD, fica lá um campo em branco. Discutindo o assunto com colega da área, ele achou que, como as variaveis de sessão tem um tempo de vida, elas geralmente expiram em 20 minutos, então durante estes 20 minutos os dados são gravados, mas passado este tempo, como as variaveis expiraram, então cadastrou-se registros em branco. Bem, esta foi a opinião dele, mas eu particularmente não concordo pelo seguinte motivo. O programa tem duas paginas, uma do formulario, e outra que executa o codigo para gravar o registro. No topo de ambas as páginas existem as declarações de inicio de sessão, assim: Note que no inicio deste codigo existe o session_start, onde a sessão está sendo iniciada. Este codigo está presente em ambas as páginas, na do formulário e na página que executa o acesso ao banco para gravar os registros. Oras, se session_start inicia uma sessão, então toda vez que a página é executada é iniciada uma nova sessão, então o contador de tempo zera, pois a cada inserção de novo registro a sessão é iniciada novamente. Então, pergunto se alguém já teve este tipo de problema ou se poderiam dizer algo a respeito. obrigado.
-
A ideia do break e depois colocar um link para voltar, até poderia ser viável, mas creio que a empresa para quem presto serviço não irá gostar, teria que ser automático mesmo. Quanto a utilizar JS, nem pensar, este problema todo é justamente porque estou adaptando o codigo para fazer algumas verificações de formulário, porque o JS pode estar desabilitado na máquina do usuário... mas valeu... só não entendo porque o header não volta quando a gente coloca uma instrucao para voltar, acho totalmente equivocado ele executar todo o codigo restante após o header... que coisa... mas valeu a ajuda de todos... obrigado.
-
bem, já vi que o header não é muito confiável mesmo... aquilo que postei é apenas um exemplo do problema que ocorre, o fato é que tenho varios ifs, e dependendo da situação cada if pode determinar que o header volte para outra pagina, sem ler os demais codigos abaixo, o que precisava era de algo parecido com o exit sub exisente no VB, onde voce aborta a aplicacao e volta para onde voce determinar... mas, valeu...
-
veja o codigo abaixo: if($Mensagem == "ok"){ echo "retorno aqui" . "<P>"; header ("location: nvcalc.php"); } codigos codigos codigos header ("location: nvcalc.php"); Se o if for verdadeiro deve retornar para a pagina nvcalc.php sem executar os codigos abaixo. O problema é que o if é verdadeiro (testei o codigo inserindo o echo "retorno aqui" para ver se o if estava sendo lido como verdadeiro, e está correto), mas mesmo assim ele executa os codigos abaixo, e depois retorna para nvcalc.php, quando deveria abortar o programa, ou seja, não executar os codigos abaixo e retornar para nvcalc.php. O que pode ser isto?
-
não creio que com o JS seja possível, creio que voce encorre no mesmo erro que encorri, se o JS está desabilitado, como ele irá verificar se o JS está habilitado ou não?
-
O php dispõe de algum recurso para identificar se o JS do navegador do usuário está habilitado ou não?
-
dando continuidade a questão, então tem como eu saber se o js está desabilitado? Se conseguir identificar isto então, eu faria um desvio no programa para outra rotina. Por exemplo, digamos que vamos fazer uma validação de formulário utilizando o JS, se estiver desabilitado o JS, e eu conseguir identificar isto, então eu faria uma rotina em php para validar este formulário...
-
Tem como habilitar o java script dos navegadores via codigo de programa? É que ocorre que como os scripts contem codigos de js, se algum navegador não tiver o js habilitado o programa funcionará inadequadamente. Mas ao mesmo tempo que posto esta mensagem, tambem fico pensando o seguinte: mesmo que exista esta possiblidade de habilitar o js via codigo, se o codigo que habilita é js também, então é chover no molhado, pois como habilitarei o js de algum navegador via codigo js se o próprio js está desabilitado? Ou será que é algum outro codigo que não seja js que habilita isto?
-
enfim, o misterio foi revelado.... o problema é que a variavel $acesso_livre2 estava retornando um caracter em branco junto com o ok... ai foi só dar um trim para limpar os espacos em branco, e resolveu... agora de onde veio este espaço em branco, sei lá... obrigado a todos ai...
-
O ESerra... não entendi sua colocacao, voce disse que acessar_novamente_livre está em branco... mas não está não.... está retornando ok.... , lembre-se que é no segundo carregamento da página que este problema ocorre...
-
não, não... talvez eu não tenha sido claro, na primeira vez que voce acessa (quando voce clica no botao Acesso livre) o resultado é este mesmo que voce mostrou. Isto está certo. O problema ocorre no segundo acesso (quando voce clica no botao enviar existente no lado esquerdo). aí comeca a confusao. Rspondendo a sua pergunta, é que na realidade eu evito ao máximo de usar variaveis de sessao, procuro passar todas elas via links de formularios (se existirem), ou window.open (que é o caso, pois quando a pagina que lista as ementas é carregada eu utilizo window.open e aproveito e passo as variaveis pelo window.open). Então recupero as variaveis com GET. De fato ocorre assim: É utilizado o método post para recuperar o valor do objeto existente na página 'x'. A página 'y' é que recupera este valor. Depois a página 'y' através de window.open continua encaminhando a variavel para outra página ... e assim vai... Então as vezes uso post, e as vezes uso get.
-
Bem, este tipo de teste eu já fiz, mas de qualquer forma fiz o que sugeriu e continua o mesmo problema. Para ver isto mais de perto, clique aqui. Irá carregar 3 frames, esquerda, superior e direita. No frame da direita clique no botao Acesso livre. Esta primeira parte está ok. O problema começa a ocorrer no segundo acesso. Então, agora faça uma seleção de tribunais e anos no frame da esquerda e clique no botão enviar. Note que irá aparecer os conteudas variaveis, assim: O contéudo da variável acesso_livre2 é ok acesso livre acesso livre2ok então note que o conteudo de acesso livre2 é ok. E a condicao if não esta sendo respeitada: if($acesso_livre2 == "ok"){ $acesso_livre = "ok"; echo "verdadeiro"; } tá um misterio...
-
bom, estou tendo um problemao com variaveis de sessao. Veja só: $acesso_livre = $_GET["acesso_livre"]; $acesso_livre2 = $_GET[acessar_novamente_livre]; a variavel $acesso_livre2 retorna o valor "ok". Bem, isto está certo. Agora veja só: if($acesso_livre2 == "ok"){ $acesso_livre = "ok"; } O problema é que a condicao não esta sendo respeitada, ou seja, o if está retornando falso, quando deveria ser verdadeiro, uma vez que a variavel $acesso_livre2 contem "ok"... Porque isto ocorre? É problema com navegador ou é problema com provedor? Ou tem algum problema aí que não estou enxergando? Já exclui cookies, já limpei o cache do navegador e nada... O que poderia estar ocorrendo?
-
peguei o codigo abaixo aqui mesmo no forum: O codigo acima identifica o navegador microsoft internet explorer, mas como faria para identificar se o navegador é o firefox?
-
creio que para evitar a repeticao dos sorteios poderia utilizar outra forma, sugiro o seguinte: coloque as urls dos links das imagens num campo em uma tabela. Crie outro campo na tabela, um campo do tipo logico (true or false). Voce tem 250 imagens, certo? Então terá 250 registros com as respectivas urls das imagens. Então ao selecionar os registros voce dará a seguinte instrucao sql: $sql = "Select * from TabelaImagens where ImagemExibida = false limit 0,24"; Em seguida voce dá um update na tabela para alterar a condicao false para true das imagens que foram exibidas, assim: $sql = "update TabelaImagens set ImagemExibida = true where ImagemExibida = false limit 0,24; Então quando a página for acessada novamente, repetirá a primeira instrucao sql acima que pegará outras 25 imagens que contem a condicao false. Então quando todas forem exibidas logicamente todas as imagens estarão com o campo logico ImagemExibida com a condição false. Então aqui, agora que já entendeu o esquema, na realidade após a primeira instrucao sql acima (quando voce seleciona as 25 imagens) voce deverá inserir o seguinte codigo: if(mysql_num_rows($Res) == 0){ // não encontrou nenhum registro com a condicao false, pois todas as imagens já foram exibidas $sql = "update TabelaImagens set ImagemExibida = false"; // altera todas as imagens voltam a ter condicao false novamente. $sql = "Select * from TabelaImagens where ImagemExibida = false limit 0,24";//necessário selecionar novamente. } Bem, resumindo, o codigo completo em ordem ficaria assim: Talvez no codigo acima exista algum erro de sintaxe, mas o importante é a idéia que lhe passei... Eu já utilizei isto, não é 100% funcional, porque existe aquela historia do usuario fechar o navegador antes da página ser executada, e outros problemas semelhantes. Espero ter ajudado...
-
Bom, esta questão é uma mistura de php com JS, então resolvi postar aqui no php mesmo. Eu fiz um script onde todos os links ficam armazenados em banco de dados, não somente o titulo do link está no BD, mas tambem todo o codigo do link, assim: no BD, em um campo da tabela tenho um link escrito assim: Ai eu executo uma instrucao sql para selecionar todos os links e mando exibir o resultado simplesmente assim; apos instrucao sql.... echo $valor["Titulo]; // neste campo Titulo contem o link acima.... Note que este link é lá daquele famoso site de venda de produtos, e note que o que está em negrito no link é uma funcao que acrescentei para exibir uma imagem quando usuário passa o mouse sobre a imagem. Bom, tudo isto aí acima funciona de boa. Bem, agora começam os problemas. Tive que mudar o programa e retirar o link do campo e deixar apenas o titulo do link. Então escrevi um link assim: echo "<a href=\"Descricao.php4?xID=".$valor['ID']."\" title=\"$popresumo\" name=\"$idprod \" onMouseOver=\"MostraImagem(name)\">".$valor['Titulo']. "</a>"; De igual forma ao metodo acima, uma instrucao sql seleciona os registros e exibo o link. Ocorre que o link está sendo exibido, mas quando passo o mouse sobre o link, a funcao MostraImagem não está exibindo a imagem, no local da imagem aparece aquele x caracteristico de uma imagem não encontrada. Mas a imagem existe, tanto existe que se eu colocar o codigo anterior (o que foi explicado no inicio do tópico) a imagem aparece. O problema está na maneira como foi escrito o link logo acima em negrito, há alguma coisa errada aí, mas não consigo achar este erro.
-
ok, funcionou... só para deixar este tópico completo, o inverso de hidden (que oculta o objeto) é visible (para fazer mostrar o objeto novamente). Display não funciona para isto. Deve servir para outra coisa... Grato
-
ah... era none mesmo, é que o nome da caixa estava sendo referenciada de maneira errada... valeu...