Hunt3r
Hunt3r

Reputation: 65

PHP/MySQL: Insert record if doesnt exist

$sql = "INSERT INTO toplist 
       (serverName, serverPassword, serverIp, serverPort, serverBanner,
        serverShortDescription, serverDescription)
       VALUES
       ('$_POST[serverName]', '$_POST[serverPassword]', '$_POST[serverIp]',
        '$_POST[serverPort]', '$_POST[serverBanner]', 
        '$_POST[serverShortDescription]', '$_POST[serverDescription]')";

if (!mysql_query($sql, $con)) {
    die('Error: ' . mysql_error());
}

echo "The server " . $_POST[serverName] . "," . $_POST[serverIp] 
    . " has been added.";

mysql_close($con);

How can I make it so that if the entry "serverIp" does not already exist, it will add it to the database, if it does already exist, then it doesn't do anything. Also, will this be case sensitive too? Will you be able to bypass it bY tYpInG LiKe tHiS?

Upvotes: 4

Views: 400

Answers (1)

Joshua Martell
Joshua Martell

Reputation: 7202

INSERT IGNORE ... will not insert if you have a unique constraint on your column. I would lower case the string before inserting it if you want it to be case insensitive.

http://dev.mysql.com/doc/refman/5.5/en/insert.html

This may also be helpful.

Upvotes: 7

Related Questions