Jump to content

Recommended Posts

Posted (edited)

Boas pessoal,

Tou aqui com um pequeno problema e talvez vocês me possam ajudar,

O problema é o seguinte, quando eu peço para ele verificar se o utilizador que o cliente escolheu já existe, mesmo que nao exista na BD ele retoma a mensagem de que o utilizador já existe.

em baixo está o código utilizado para verificar se o utilizador existe ou não:

$teste =  mysqli_query($liga,"select COUNT(utilizador) FROM utilizadores WHERE utilizador='$Utilizador'"); //seleciona todos os nomes que existem com o nome digitado pelo utilizador

 $verificar = mysqli_num_rows($teste); //conta quantos registos foram encontrados na query anterior

 var_dump($verificar);

 if ($verificar> 0) {
	 echo "O Utillizador já se encontra registado no sistema. Por favor, utilize outro nome!";

 } else {

Desde já agradeço a quem me conseguir ajudar 🙂 .

Edited by brunoais
geshi!
Posted (edited)

porque que na query tens um count, porque que depois ves o numero de rows afected??

e ja' agora nao executaste a query!

EDIT:

Exemplo de num_rows:



<?php

$link = mysql_connect("localhost", "mysql_user", "mysql_password");
mysql_select_db("database", $link);

$result = mysql_query("SELECT * FROM table1", $link);
$num_rows = mysql_num_rows($result);

echo "$num_rows Rows\n";

?>

http://php.net/manual/en/function.mysql-num-rows.php

Edited by pikax

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Posted

Boas,

pikas, tens razão, a query é executada eu é que me esqueçi de colocar o código que estava antes 😛 .

MASNathan, fiz como tu sugeriste e retomou o seguinte erro "Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given...".

HappyHippyHippo, em relação ao 1º ponto, eu sei que retoma sempre um valor numérico.

em relação ao 2º ponto, a variável que estou a usar é "verificar", foi uma gralha a copiar o código para aqui.

Posted

verifica se a ligacao foi bem sucedida

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Posted

verifica se a ligacao foi bem sucedida

A ligação é bem sucedida porque logo aseguir a verificar se existe ou não, insere os dados na BD, e a realidade é que dá este erro mas insere o registo.

Posted

mete para verificar se ele retorna alguma coisa

$teste = mysqli_query($liga,"select COUNT(utilizador) FROM utilizadores WHERE utilizador='$Utilizador'"); //seleciona todos os nomes que existem com o nome digitado pelo utilizador
      if($teste)
       {
		 $verificar = mysqli_num_rows($teste); //conta quantos registos foram encontrados na query anterior
		 print_r($verificar);
   }
      else
	  echo "errorr!!!<br>";


Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Posted

mete para verificar se ele retorna alguma coisa

$teste = mysqli_query($liga,"select COUNT(utilizador) FROM utilizadores WHERE utilizador='$Utilizador'"); //seleciona todos os nomes que existem com o nome digitado pelo utilizador
   if($teste)
	{
		 $verificar = mysqli_num_rows($teste); //conta quantos registos foram encontrados na query anterior
		 print_r($verificar);
   }
   else
	  echo "errorr!!!<br>";


Eu usei o var_dump antes de fazer o tal if e aquilo retoma um NULL

Posted

a tua query tem algum erro, nao te importas de por aqui a tabela?

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Posted

Como disseste Pikax, a query tinha um erro daqueles que é tão evidente que quando estamos há horas a olhar para isto passa-nos ao lado.

O erro estava quando eu apaguei o count(utilizador) e escrevi utilzador.

Obrigado pela vossa preciosa ajuda.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.