Om te voorkomen dat ik dubbele aanmeldingen krijg eis ik dat bij mensen hun email en gebruikersnaam uniek moet zijn!

Nu weet ik hoe dat moet met Mysql. Op de velden user en email UNIQUE maken. Geen probleem dus. Maar hoe regel ik die error met PHP.

Wat heb ik nu:
<?php
if(Hele rotzooi checks het moet veilig zijn.){
if(db->insert_data('tabel',$_POST)){
//stuur een email naar xx en dan ga naar de volgende stap
}else{
if(mysql_errno() == 1062){
//een van de velden is uniek. Maar welke?
}else{
echo 'Kaboem database error!';
}
}else{
echo 'Form';
}
?>

[edit]Schaam schaam... Ik was een PHP tag vergeten :([/edit]
Daarvoor moet je zowiezo alle gebruikersnamen of alle emailadressen ophalen om daarop een check uit te voeren.
Tenminste dat denk ik :)
Hmm even in een andere source code van mijn andere websites gekeken:

<?php
  if(mysql_errno() == 1062){
  $sql = 'SELECT COUNT(`u_id`) FROM gebruikers WHERE u_username = "'.$_POST['u_username'].'"';
  $count = $db->num_rows($sql);
  ?>
  <div class="warning"><p>
  <?php
  if($count > 0){
     echo 'Tijdens een controle bleek de door jouw opgegeven gebruikersnaam al een keer voor te komen. En dit is niet toegestaan. Geef een andere gebruikersnaam op.';
     $error['u_username'] = 1;
  }else{
     echo 'Tijdens een controle bleek de door jouw opgegeven email adress al een keer voor te komen. En dit is niet toegestaan. Geef een andere email adress op.';
     $error['u_email'] = 1;
  }
  ?>


Het kan dus wel zo kan het korter?

Reageren