Jump to content

SQL - Check if variable already exists


oliverj777

Recommended Posts

Hello,

 

I working on a very simple 'Create User' script, and I'm struggling to have a 'anti duplicate' system. Where it connects to SQL and checks to see if a username is already being used.

 

This is what I have:

 

mysql_connect("localhost", "username", "pass") or die(mysql_error());
mysql_select_db("database") or die (mysql_error());

$fetch = "SELECT * FROM highscores";
$result = mysql_query($fetch) or die (mysql_error());

$AddNewPlayer = $_POST["PHPnewPlayer"];
$AddNewScore = $_POST["PHPnewScore"];

$row = mysql_fetch_array($result);
if($AddNewPlayer == $row['player']){
        //this is always false - so it adds a username regardless 
echo "Profile already in use";
}
else if($AddNewPlayer == ""){
echo "Please enter a profile name";
}
else{
mysql_query("INSERT INTO highscores (player, score) VALUES('".$AddNewPlayer."', '".$AddNewScore."') ") 
or die (mysql_error());
echo "Profile Added"."-".$AddNewPlayer;
}

 

 

It never seems the check to see if a username is already in use, and so it just adds a username regardless. What am I doing wrong?

 

Thanks

Link to comment
Share on other sites

try this approach instead

mysql_connect("localhost", "username", "pass") or die(mysql_error());
mysql_select_db("database") or die (mysql_error());

$AddNewPlayer = $_POST["PHPnewPlayer"];
$AddNewScore = $_POST["PHPnewScore"];

$fetch = "SELECT * FROM highscores WHERE player = '$AddNewPlayer'";
$result = mysql_query($fetch) or die (mysql_error());


$num_rows = mysql_num_rows($result);
if($num_rows > 0){
        
echo "Profile already in use";
}
else{

if($AddNewPlayer == ''){
echo "Please enter a profile name";
} else {
mysql_query("INSERT INTO highscores (player, score) VALUES('".$AddNewPlayer."', '".$AddNewScore."') ") 
or die (mysql_error());
echo "Profile Added -".$AddNewPlayer;
   }
}

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

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.