- Først.. som @RamRaider allerede har kommenteret, skal du tilføje et unikt indeks til
email
kolonne - For det andet.. du skal stoppe med at bruge
mysql_*
funktioner, fordi de er forældede. Du kan brugemysqli_*
funktioner,MySQLi
klasse ellerPDO
. Ved at bruge forberedte udsagn undgår du også SQL-injektioner -
Selvom du angiver et unikt indeks, bør du altid bekræfte, før du indsætter det:
<?php // PDO instantiation here $stmt = $pdo->prepare('SELECT COUNT(email) AS EmailCount FROM emails WHERE email = :email'); $stmt->execute(array('email' => $_POST['email'])); $result = $stmt->fetch(PDO::FETCH_ASSOC); if ($result['EmailCount'] == 0) { $stmt = $pdo->prepare('INSERT INTO emails (email) VALUES (:email)'); $stmt->execute(array('email' => $_POST['email'])); echo 'Thank you for Submitting. Redirecting back to Home Page'; } else { echo 'E-mail exists!'; }