thelast 0 Denunciar post Postado Junho 21, 2013 Olá pessoal, Gostaria de saber como eu uso o "lower" para duas variáveis. Estou usando desta forma, mas não deu certo: $sql = mysql_query("SELECT * FROM usuariosmb WHERE LOWER(nick) = '" . strtolower($nick) . "' and LOWER(email) = '" . strtolower($email) . "'"); Funciona com o "$nick", porém com o "$email" não. Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Junho 21, 2013 E isso retorna o que? echo strtolower($email); Compartilhar este post Link para o post Compartilhar em outros sites
thelast 0 Denunciar post Postado Junho 21, 2013 Na verdade, estou usando este comando para evitar que o mesmo nick e e-mail sejam adicionados ao banco de dados. Em relação ao comando: o $nick: TheLast e thelast são iguais. porém com o $email: thelast@hotmail.com e THELAST@HOTMAIL.COM são diferentes (exemplo). Sei que está dando erro pois o mesmo email (maisculo e minusculo) está sendo add ao banco de dados. Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Junho 21, 2013 Mas esse aí é um comando [inline]SELECT[/inline], você está se lembrando de também usar [inline]strtolower[/inline] no comando INSERT? Compartilhar este post Link para o post Compartilhar em outros sites
thelast 0 Denunciar post Postado Junho 21, 2013 Não, porque eu quero que seja colocado no banco de dados o que o usuário digitou (seja maiusculo ou minusculo). No SELECT, eu consigo comparar o que o usuário digitou com o que está no bd, ambos em minusculo. Correto? Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Junho 21, 2013 Então qual é o problema??? Compartilhar este post Link para o post Compartilhar em outros sites
thelast 0 Denunciar post Postado Junho 21, 2013 É que o nick não era adicionado quando tinha no bd (independente de maiusculo ou minusculo), porém o email era adicionado. Ficava assim: id: 1 - nick: thelast - email: thelast@hotmail.com id: 2 nick: outroqualquer - email: THELAST@HOTMAIL.COM Com o nick não acontecia isto. Consegui resolver utilizando estes códigos: <?php $nick=$_POST['nick']; $email=$_POST['email']; $senha=$_POST['senha']; $_POST["senha2"]=0; $nick2 = strtolower($nick); $email2 = strtolower($email); $sql = mysql_query("SELECT * FROM usuariosmb WHERE nick = '$nick2' or email = '$email2'"); $numemail = mysql_num_rows($sql); if ($numemail > 0) { echo "<center><h2>O email e/ou o nick já estão sendo utilizados por outro usuário.</h2></center>"; echo "<script>failed()</script>"; } else { $sql = mysql_query(" INSERT INTO usuariosmb(nick, email, senha) VALUES('$nick', '$email', '$senha')"); echo "<center><h2>Cadastro efetuado com sucesso. Aguarde!!!</h2></center>"; echo "<script>cadastrook()</script>"; } ?> Só não entendo porque o código abaixo não deu certo :/ $sql = mysql_query("SELECT * FROM usuariosmb WHERE LOWER(nick) = '" . strtolower($nick) . "' and LOWER(email) = '" . strtolower($email) . "'"); Sendo que é a mesma coisa, ou estou errado? Compartilhar este post Link para o post Compartilhar em outros sites