Gegevens controleren of ze bestaan in database

Status
Niet open voor verdere reacties.

jeroendew

Gebruiker
Lid geworden
7 feb 2007
Berichten
242
ik heb een formulier gemaakt, en nu wil ik kijken wanneer ik iets post of die al in de database bestaat hoe doe ik dit?
Hier de code
PHP:
<?php 
// Connectie naar de database maken
mysql_connect('localhost','root',''); 
mysql_select_db('School') or die (mysql_error()); 

//Variablen aanmaken
if(isset($_POST['verzenden'])) 
  { 
	$gebruikers_id	=	($_POST['gebruikers_id']);
    $tafel        	=   ($_POST['tafel']); 
    $dag      		=   ($_POST['dag']); 
    $maand      	=   ($_POST['maand']); 
    $jaar        	=   ($_POST['jaar']); 
    $uur        	=   ($_POST['uur']); 
    $min        	=   ($_POST['min']); 
    $personen      	=   ($_POST['personen']); 	
	
// Database selecteren
    mysql_query("INSERT INTO reservering (gebruikers_id, tafel, dag, maand, jaar, uur, min, personen) VALUES ('".$gebruikers_id."', '".$tafel."', '".$dag."', '".$maand."', '".$jaar."', '".$uur."', '".$min."', '".$personen."')") or die (mysql_error()); 

    echo 'U reservering is geplaatst'; 
  } 
else 
  { 
?>
<form method="POST">
Controleer de volgende gegevens
<br />
Uw vooraam is:<br /> <input disabled="disabled" type="text" value="<?php echo  $_SESSION['SESS_voornaam']; ?>" name="voornaam" /> <br />
Uw achternaam is:<br /> <input disabled="disabled" type="text" value="<?php echo  $_SESSION['SESS_achternaam']; ?>" name="achternaam" /><br />
<br /><input type="hidden" value="<?php echo $_SESSION['SESS_gebruikers_id']; ?>" name="gebruikers_id" />  

    <p>Stap 1: Maak een keuze aan welke tafel u wilt gaan zitten<br />
      <?php
echo '<select name="tafel">';
for($i_t=0;$i_t < 13;$i_t++)
	{
	$Tafels = array('Tafel 1','Tafel 2','Tafel 3','Tafel 4','Tafel 5','Tafel 6','Tafel 7','Tafel 8','Tafel 9','Tafel 10','Tafel 11','Tafel 12','Tafel 13');
	echo '<option value="'.($i_t+1).'">'.$Tafels[$i_t].'</option>';
	}
echo '</select>';
?><br />
      
      Stap 2: Selecteer een datum<br />
      <?php
echo '<select name="dag">';
for($i_d=1;$i_d <= 31;$i_d++)
	{
	echo '<option value="'.$i_d.'">'.$i_d.'</option>';
	}
echo '</select>';

echo '<select name="maand">';
for($i_m=0;$i_m < 12;$i_m++)
	{
	$maanden = array('Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December');
	echo '<option value="'.($i_m+1).'">'.$maanden[$i_m].'</option>';
	}
echo '</select>';

echo '<select name="jaar">';
for($i_j=2010;$i_j < 2014;$i_j++)
	{
	echo '<option value="'.$i_j.'">'.$i_j.'</option>';
	}
echo '</select>';
?>
      <Br />Stap 3: Selecteer een tijdstip<br />
      <?php
echo '<select name="uur">';
for($i_d=10;$i_d <= 22;$i_d++)
	{
	echo '<option value="'.$i_d.'">'.$i_d.'</option>';
	}
echo '</select>';

echo '<select name="min">';
for($i_z=0;$i_z <= 3;$i_z++)
	{
	$min = array('00','15','30','45');
	echo '<option value="'.($i_z).'">'.$min[$i_z].'</option>';
	}
echo '</select>';
?>
      <br />Stap 4: Met hoeveel personen komt u eten?<br />
      <?php
echo '<select name="personen">';
for($i_d=1;$i_d <= 15;$i_d++)
	{
	echo '<option value="'.$i_d.'">'.$i_d.'</option>';
	}
echo '</select>';
?>  <br />
<input name="verzenden" type="submit" value="Verzenden" />
    </p>
</form>
<?php 
  } 
?>
 
Door een UNIQUE-constraint te plaatsen op de velden die bij elkaar uniek moeten zijn, en de fout 'Duplicate entry (...)' af te vangen met mysql_errno().
 
Daar kan ik niet zoveel mee...

Begin eens met googlen op 'UNIQUE-constraint' als het je niet helemaal duidelijk is.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan