Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Problema com PHP acho que é simples

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    Duvida Problema com PHP acho que é simples

    Galera, estou criando um sistema de Login com Session a partir dessa vídeo aula
    Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar...

    E estou com um probleminha, tipo o sistema faz a checagem para ver se há algum campo em branco, se estiver em branco ele cria uma Div avisando que precisa preencher corretamente TAL campo.
    Mas o problema é que por exemplo:
    Eu esqueço de por nome ou coloco nome incompleto, ele retorna com a mensagem mas apagava oque estava escrito nos campos, na video aula o cara fala pra gente fazer assim:

    Estava assim:
    Código PHP:
    <input type="text" name="nomeUsuario"/> 
    Ele fala pra colocar assim:
    Código PHP:
    <input type="text" value="<?php echo $nomeUsuario?>" name="nomeUsuario"/>

    Ai da erro falando que a variavel $nomeUsuario não está definida D:.

    Sendo que ela foi definida no inicio do
    Código PHP:
    <body
    .
    Olha só:

    Código PHP:
    <?php
        
    if(isset($_POST["acao"]) && $_POST["acao"] == "salvar")
        {
            
    $nomeUsuario $_POST["nomeUsuario"];
            
    $usuario $_POST["usuario"];
            
    $senha $_POST["senha"];
            
    $nivel $_POST["nivel"];
            
            if(empty(
    $nomeUsuario))
            {
                
    $alerta "Preencha todos os campos corretamente!";
            }
            elseif(empty(
    $usuario))
            {
                
    $alerta "Preencha todos os campos corretamente!";
            }
            elseif(empty(
    $senha))
            {
                
    $alerta "Preencha todos os campos corretamente!";
            }
            elseif(empty(
    $nivel))
            {
                
    $alerta "Preencha o nivel de acesso do usuário!";
            }
            else
            {
            }
        }
    ?>
    Elá foi definida...
    E ela está definida na mesma página que tem o formulário, e está definida acima do formulário, logo no inicio do BODY.
    Não sei porque da esse erro!

    Ele diz que a variavel não existe:
    Código PHP:
    NoticeUndefined variablenomeUsuario in C:\wamp\www\SISTEMA DE LOGIN\cadastro.php on line 50 Call Stack #TimeMemoryFunctionLocation 10.0005373072{main}( )..\cadastro.php:0 " name="nomeUsuario"/> 

  • Font Size
    #2
    Pelo O'Que Intendi Esse Erro So Vai Dar Quando O Usuario For Cadastra E Os Capos Estiveren Vasios
    Administrador do forum

    Comment


    • Font Size
      #3
      Não tipo.
      Se eu coloco assim:
      Código PHP:
      <input type="text" value="<?php echo $nomeUsuario?>" name="nomeUsuario"/>
      E eu abro a página, já mostra o erro no campo.

      Comment


      • Font Size
        #4
        Isso na verdade não é um erro, é apenas uma notificação (repare que está escrito notice no começo da mensagem) do PHP. Isso ocorre porque apesar de vc já ter criado a variável, ela só passará a ter um valor dependendo da condição testada no if. Enquanto essa condição não for verdadeira, a variável $nomeUsuario permanece vazia, e o PHP gera esta notificação para avisar que a variável ainda está vazia. Mas não é um erro que impeça a execução do seu sistema.

        Este assunto gera uma certa polêmica, pois muita gente (inclusive eu) desabilita os notices do PHP, pq vc não tem muito o que fazer a respeito disso. Porém, outras pessoas gostam de deixar ativo.

        Procure no google a respeito de notice em PHP e vai encontrar bastante informação, ai vc pode ter uma idéia melhor de que caminho tomar. Se optar por desabilitar, também tem muitos tutoriais explicando como faz.
        Mas aparentemente, está tudo certo com o seu código.

        Qualquer dúvida posta ai que a gente ajuda. Boa sorte com os estudos!

        Comment


        • Font Size
          #5
          Vlw cara!
          Consegui desabilitar aqui, vlw!

          Comment


          • Font Size
            #6
            Para comlpementar.

            Faça desta forma:

            <input type="text" value="<?=$nomeUsuario?>" name="nomeUsuario"/>
            Fica melhor para este caso.



            areax@hotmail.com



            Comment


            • Font Size
              #7
              Concentra mais as variaveis !

              Comment


              • Font Size
                #8
                ou use assim..
                <input type="text" value="<?php echo htmlspecialchars($_POST['nomeUsuario']); ?>" name="nomeUsuario"/>

                Comment

                X
                Working...
                X