[英]Check if username exists in a database
如果用户名存在,试图阻止用户注册。 这是我的代码:
include('../connection.php');
//get all the names and values that have been posted.
$username = $_POST['username'];
//check if username exists
$sql = "SELECT * FROM tbl_Freelancers WHERE User_Username = '".$username."'";
$result = mysqli_query($con,$query);
if(mysql_num_rows($result)>=1)
{
echo"name already exists";
}
else
{ // excecute insert query
我已经尝试了很多其他的东西让它工作,但由于某种原因我的代码不喜欢我......
将mysql_num_rows
更改为mysqli_num_rows
if(mysqli_num_rows($result)>=1)//You are mixing the mysql and mysqli, change this line of code
{
echo"name already exists";
}
else
{ //
在查询中使用它之前,请使用bind param或proplerly转义您的值。
更改..
$sql = "SELECT * FROM tbl_Freelancers WHERE User_Username = '".$username."'";
$result = mysqli_query($con,$query);
至
$sql = "SELECT * FROM tbl_Freelancers WHERE User_Username = '".$username."'";
$result = mysqli_query($con,$sql);
你在$ sql中指定了查询并在$ query中执行...也得到输入为...
$username = mysqli_real_escape_string($con, $_POST['username']);
出于安全原因......
将您的查询更改为:
$sql= "SELECT * FROM tbl_Freelancers WHERE User_Username = '$username'";
$result=mysql_query($sql);
if(mysql_num_rows($result)!=0)
{
echo"name already exists";
}
else
{
// excecute insert query
}
mysql_num_rows
从PHP 5.5.0
不推荐使用,将来会被删除
所以使用替代mysqli_num_rows
try this
include('../connection.php');
$username = $_POST['username'];
$sql = "SELECT * FROM tbl_Freelancers WHERE User_Username = '".$username."'";
$result = mysql_query($sql);
if(mysql_num_rows($result)!=0)
{
echo"name already exists";
}
else
{
echo ".........";
}
你的$query
变量必须是mysqli_query中的第二个参数,而不是你使用$sql
。 所以用mysqli_query()
函数中的$ query替换$sql
并使用mysqli
而不是mysql_num_rows()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.