Guest jack_sama Postado Dezembro 7, 2005 Denunciar Share Postado Dezembro 7, 2005 eu consigo produzir um sistema de login mas enviando para uma outra pagina, gostaria de fazer login mas sem deixar a pagna em questão usando recursividade! alguém ai tem um script simples para me explicar ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Guest Postado Dezembro 8, 2005 Denunciar Share Postado Dezembro 8, 2005 não sei o script certimmas se você fizer um if(login=="login" && senha=="senha"){ goandplay(2); }deve ta errado.. mas foi só uma ideia Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ::vinicius:: Postado Dezembro 8, 2005 Denunciar Share Postado Dezembro 8, 2005 creio que não seja necessário usar recursão. Basta trocar o endereco do sistema que fizestes para, ao invés de ir para outra pagina, ir para ela mesmo. Só que agora vai estar logado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Henderson Postado Dezembro 9, 2005 Denunciar Share Postado Dezembro 9, 2005 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Dezembro 10, 2005 Denunciar Share Postado Dezembro 10, 2005 esse exemplo acima esta errado pois no primeiro acesso a pagina ira dar um notice porque não existe ainda $_POST["login"];o certo é você fazer assim: <? //aqui verifica se existe o Submit, significa que o form foi enviado if(isset($_POST["Submit"])) { $login = $_POST["login"]; $senha = $_POST["senha"]; //aqui você verifica os dados e faz o login } else { // mostra o formulario } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Henderson Postado Dezembro 10, 2005 Denunciar Share Postado Dezembro 10, 2005 é verdadefui fazer aqui na hora e fiz erradoos $_POST tinham que ter ficado em baixo do elseasssim: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Dezembro 10, 2005 Denunciar Share Postado Dezembro 10, 2005 continua errado ,agora tem um erro a maisif(!isset($login) || (!isset($senha)) { e outra testando se existe $login nunca ira existir o certo é fazer assim no seu caso:<?php$login = isset($_POST["login"]) ? $_POST["login"] : "";$senha = isset($_POST["senha"]) ? $_POST["senha"] : "";if(!empty($login) || !empty($senha)) {//verifica o login e loga} ?>aqui mostra o formulario em html mesmo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Henderson Postado Dezembro 11, 2005 Denunciar Share Postado Dezembro 11, 2005 errado?!eu uso assimfunciona normalmenteestranho! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Dezembro 11, 2005 Denunciar Share Postado Dezembro 11, 2005 seu exemplo da esse erro:Parse error: parse error, unexpected '{' in C:\root\test.php on line 2porque tem um ( sobrandoif(!isset($login) || (!isset($senha)) { e você ta testando assim:if(!isset($login) || !isset($senha)) { se não existir $login e $senhae nunca ira existir $login e $senha no começo da paginaeu percebi seu problemavocê ta usando register_globals = on e display_errors = offdeixe register_globals = off e display_errors = on autere no php.iniregister_globalsUsando Register GlobalsQUOTETalvez a mudança mais controversa no PHP é quando o valor padrão para a diretiva do PHP register_globals passou de ON para OFF no PHP 4.2.0. Confiança nesta está diretiva foi bastante pública e muitas pessoas nem mesmo sabiam que ela existia e assumiam que ela é apenas a forma como o PHP trabalha. Esta página irá explicar como alguém pode escrever um código inseguro com esta diretiva, mas mantenha em mente que a diretiva por si só não é insegura, mas o seu uso incorreto sim. Quando register_globals esta em on injetará (veneno) em seus scripts, todos os tipos de variáveis, como variáveis request de formulários HTML. Isto junta-se com o fato deo PHP não exigir inicialização de variáveis siginifica que escrever códigos inseguros é muito mais fácil. Não foi uma decisão difícil, mas a comunidade PHP decidiu, por definição, desabilitar esta diretiva. Quando on, as pessoas usavam variáveis ainda sem saber realmente, com certeza, de onde elas vinham e podiam apenas supor. Variáveis internas que estão definidas no próprio script conseguem se misturar com dados requisitados enviados pelos usuários e desabilitando register_globals muda isto. Vamos demonstrar com um exemplo de mal uso de register_globals: display_errors = onIsto mostra os erros e alertas de erros que seu script tiver Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Henderson Postado Dezembro 11, 2005 Denunciar Share Postado Dezembro 11, 2005 ah tásó se for isso que você falouo parenteses tudo bemfoi distraçãomas ele funcionamesmo a variavel tando vazia!não intendi nada agora!:S Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Dezembro 11, 2005 Denunciar Share Postado Dezembro 11, 2005 então o seu exemplo funciona com você porque você usa register_globals = one por segurança você precisa deixar ele em off entre no php.ini e procure por ele dai você edita ele e reinicia o serviço do servidor web dai você vai ver que não ira mais funcionar seu exemplo e tem que ser assim mesmo por segurança nunca mais usar register_globals em one o motivo que você não ve erros é porque o display_errors deve estar em off se você editar la no php.ini e deixar ele em on você ira ver uma mensagem de erro quando tiver erros na pagina Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest jack_sama
eu consigo produzir um sistema de login mas enviando para uma outra pagina, gostaria de fazer login mas sem deixar a pagna em questão usando recursividade! alguém ai tem um script simples para me explicar ?
Link para o comentário
Compartilhar em outros sites
10 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.