Doppelten Email-Eintrag in mysql verhindern

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    Danke nochmal an alle, die mir hier weitergeholfen haben.

    Der Fehler lag zum Schluss daran, das ich zwar zuvor die fürs
    speichern erforderliche Datenbank selectiert hatte aber
    nicht für die nachträglich oberhalb eingefügte Routine um
    zu prüfen, ob die Emailadresse bereits vorhanden ist.

    Folgender Code wurde nun zuoberst eingefügt.
    PHP-Code:
    $dbconnect mysql_connect($host,$user,$password) or die ('Keine Verbindung!'); 
    mysql_select_db($database,$dbconnect) or die ('Konnte Datenbank nicht finden!'); 
    Und hier ist die komplette funktionierende Lösung:
    PHP-Code:
    <?php
    ini_set
    ('error_reporting'E_ALL);  
    $host "localhost"
    $user "user***"
    $password "*********"
    $dbname "usr_user******"
    $tabelle ="kontakt";  

    $dbconnect mysql_connect($host,$user,$password) or die ('Keine Verbindung!');
    mysql_select_db($database,$dbconnect) or die ('Konnte Datenbank nicht finden!');
     
    $sql "SELECT count(*) AS anzahl FROM $tabelle WHERE email = '".$_POST['email']."'";  
    echo 
    $sql;  
    $result mysql_query($sql) OR die(mysql_error());  
    $row mysql_fetch_object($result); 
    if(
    $row->anzahl 0) {  
     echo 
    "E-Mail-Adresse bereits vorhanden";  
    } else { 
    $sql "INSERT INTO     $tabelle VALUES (0,    
    '"
    .$_POST['email']."',    
    '"
    .$_POST['anrede']."',   
    '"
    .$_POST['vorname']."',   
     '"
    .$_POST['name']."')";    
    mysql_query($sql) OR die(mysql_error());  
    if (
    mysql_affected_rows() > 0){    
    print (
    "Datenbankeintrag erfolgreich.");   
    } else {    print (
    "Es traten Probleme auf.");   

    }  

    mysql_close ($dbconnect);  
    ?>

    Kommentar

    Lädt...
    X