1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

[duvida]registo com o mesmo nome

Discussão em 'Web Development' iniciada por GreenSpider, 29 de Fevereiro de 2008. (Respostas: 18; Visualizações: 856)

  1. GreenSpider

    GreenSpider Power Member

    como posso fazer com que um utilizador nao se registe-se com um username ja existente na BD?
     
  2. oscarolim

    oscarolim Power Member

    username como campo primario ou unico (segunda opçao melhor).
    ao fazer o registo (no teu lado) efectuar query à bd com username e verificar se retorna algo. Se retornar dá erro, se não retornar crias o user.
     
  3. GreenSpider

    GreenSpider Power Member

    ja consegui!
    mas ja agora sabem como posso colocar uma caixa de mensagem em php? no javascript era alert("mensagem");
    thanks
     
  4. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    O PHP não é recebido pelo cliente. Ou seja, é precisamente o alert("mensagem") (JavaScript) que usas para isso ;)
     
  5. GreenSpider

    GreenSpider Power Member

    usei este codigo dentro do php e nao funcionou

    else
    {
    <script language="Javascript">
    alert ("Username existente!");
    </script>
    }
     
  6. DanielGomes

    DanielGomes Power Member

    É normal que não funcione visto que não deste uma instrução para que esse bloco fosse escrito na página. Tens de colocar isso dentro de um echo, não esquecendo de fazer escape às aspas com "\":

    else
    {
    echo " <script language=\"Javascript\">
    alert (\"Username existente!\");
    </script>";
    }
     
  7. anjo2

    anjo2 Power Member

    não precisa de colocar isso dentro de um echo desde que coloque o fim do php.


    else
    {?>
    <script language="Javascript">
    alert ("Username existente!");
    </script>
    <?}
     
  8. DanielGomes

    DanielGomes Power Member

    Tambem.. :)
     
  9. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Ou ainda com heredocs:

    else
    {
    echo <<< FIM
    <script language="Javascript">
    alert ("Username existente!");
    </script>
    FIM;
    }

    anjo2, não é muito bom aconselhares a entrar/sair do php com as short tags "<? ?>". É melhor dizer sempre "<?php ?>" ;)

    GreenSpider, acho que antes de começares a mexer no PHP, deves perceber a diferença entre linguagens do lado do servidor/cliente e em que é que cada uma te é útil. Afinal, o PHP só serve para conseguires enviar ao utilizador diferentes respostas para a mesma página, mas essas respostas têm de ser enviadas através de comandos do PHP (echo/print) ou através do fluxo normal do programa (if (condição) { ?> algum HTML a enviar caso condição se verifique <?php }).
    O código que mostraste é uma mistura de HTML com PHP, enquanto que tens de os ter bem distinguidos. Quando entras no PHP com o <?php, tudo o que está até ao ?> é PHP, e se quiseres que esse código envie HTML para o utilizador, usas o echo OU sais do PHP.
     
  10. GreenSpider

    GreenSpider Power Member

    nao deu assim, da erro!

    else
    {?>
    <script language="Javascript">
    alert ("Username existente!");
    </script>
    <?}
     
  11. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Tenta
    Código:
     
    {
    ?>
    <script language="Javascript">
    alert ("Username existente!");
    </script>
    <?php
    }
     
  12. GreenSpider

    GreenSpider Power Member

    agora da! mas e ao fazer load da pagina, e eu queria que ele fizesse se o utilizador ja existisse, mas tambem nao consigo que nao se registe com o mesmo nome
     
  13. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    ... ahn? Não percebi nada! :x
     
  14. GreenSpider

    GreenSpider Power Member

    tou a dizer que aparece a mensagem mas nao como eu queria, eu ao abrir a pagina a mensagem aparece logo sem respeitar o if e else
     
  15. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Como é que tens esse IF?
     
  16. GreenSpider

    GreenSpider Power Member

    O meu if ta certo, ele verifica se as variaveis que tenho de erro tas vazias, se tiverem ele insere senao eu queria que ele desse uma mensagem a dizer que o username ja existe
    eu resolvi o problema de nao deixar registar com o mesmo nome, foi pela maneira mais facil, foi a tabela da bd e metin o campo username com unique e pronto
    agora queria era a mensagem de erro, ou que ele fosse para uma pagina de erro
     
  17. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Se bem percebi, isto deve resultar, não?
    PHP:
    if (mysql_query("...")) {
      echo 
    'Utilizador criado';
    } else {
      echo 
    '<script>alert("O utilizador já existe");</script>';
    }
    Isto, caso eu esteja a perceber bem o problema.
     
  18. GreenSpider

    GreenSpider Power Member

    e mais ou menos isso, mas a mensagem tambem aparece ao fazer load da pagina, e nao respeita o else

    else {
    echo
    '<script>alert("O utilizador já existe");</script>'
    ;
    }


     
  19. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Continuo a não perceber o que queres dizer com isso. Tem em conta que não sabemos mais nada do teu código senão o que mostraste!
    Se não respeita o else (o que é isso?), provavelmente há um erro qualquer de lógica no If.
     

Partilhar esta Página