Hallo, ik heb een compleet nieuw reservatie script maar ik zit met een laatste probleem wat ik en mijn klasgenoten niet lukken.
namelijk het volgende.
Datum 1 20-05-2010 tot 28-05-2010
Datum 2 19-05-2010 tot 29-05-2010
Datum 3 21-05-2010 tot 30-05-2010
Datum 1 is mijn eerste ingevoerde datum deze schijft hij weg naar de database wat klopt, maar als ik daarna datum 2 invoer en wil reserveren dan schrijft hij deze ook weg naar de database terwijl deze invoer incorrect is aangezien datum 1 tussen datum 2 valt, en als ik datum 3 invoer dan krijg ik de melding dat het huisje al bezet is wat ook klopt aangezien datum 1 er tussen valt.
Hier mijn php code
<form method="post" action="<?php echo ($_SERVER["PHP_SELF"]);?>"
<?php
include("mysqlconnect2.php");
if ($_SESSION['huis'] <> TRUE) {echo "Kies a.u.b. een vakantie woning";}
else {
$huis = $_SESSION['huis'];
$huisplaats = $_SESSION['huisplaats'];
$JAAR = date ("Y");
if (!empty($_POST)){
$adag = $_POST["adag"];
$amaand = $_POST["amaand"];
$ajaar = $_POST["ajaar"];
$vdag = $_POST["vdag"];
$vmaand = $_POST["vmaand"];
$vjaar = $_POST["vjaar"];
if ($adag == NULL){echo "<p> U heeft geen datum ingevult.<br><input type='Button' value='Ga Terug' onClick='javascript:history.back();'> </p>";}
else{
if ($vdag == NULL){echo "<p> U heeft geen datum ingevult.<br><input type='Button' value='Ga Terug' onClick='javascript:history.back();'> </p>";}
else {
if ($amaand == NULL){echo "<p> U heeft geen datum ingevult.<br> <input type='Button' value='Ga Terug' onClick='javascript:history.back();'> </p>";}
else {
if ($vmaand == NULL){echo "<p> U heeft geen datum ingevult.<br> <input type='Button' value='Ga Terug' onClick='javascript:history.back();'> </p>";}
}}
if (is_numeric($adag) == true){if (is_numeric($amaand) == true){$adatum = "TRUE";};};
if (is_numeric($vdag) == true){if (is_numeric($vmaand) == true){$vdatum = "TRUE";};};
if ($adatum <> TRUE){echo "<p>De datums zijn niet goed ingevult.<br> <input type='Button' value='Ga Terug' onClick='javascript:history.back();'> </p>";}
else {
if ($vdatum <> TRUE){echo "<p>De datums zijn niet goed ingevult.<br> <input type='Button' value='Ga Terug' onClick='javascript:history.back();'> </p>";}
else {
$aankomstdatum = "$adag/$amaand/$ajaar";
$vertrekdatum = "$vdag/$vmaand/$vjaar";
$aankomstdatum2 = "$amaand/$adag/$ajaar";
$vertrekdatum2 = "$vmaand/$vdag/$vjaar";
$myinput=$aankomstdatum2;
$sqldate=date('Y-m-d',strtotime($myinput));
$myinput2=$vertrekdatum2;
$sqldate2=date('Y-m-d',strtotime($myinput2));
$myinput3=$day;
$sqldate3=date('Y-m-d',strtotime($myinput3));
function dateDiff($dformat, $endDate, $beginDate)
{
$date_parts1=explode($dformat, $beginDate);
$date_parts2=explode($dformat, $endDate);
$start_date=gregoriantojd($date_parts1[0], $date_parts1[1], $date_parts1[2]);
$end_date=gregoriantojd($date_parts2[0], $date_parts2[1], $date_parts2[2]);
return $end_date - $start_date;
}
$Dagen = dateDiff("/", $vertrekdatum2, $aankomstdatum2);
if ($Dagen < 0){echo "<p>De aankomst- en vertrek data zijn niet goed ingevult!<br> <input type='Button' value='Ga Terug' onClick='javascript:history.back();'> </p>";}
else{
$check = TRUE;
$checksql="SELECT aankomst_datum, vertrek_datum
FROM reserveren
WHERE huis =$huis";
$sql2=mysql_query($checksql) ;
while($data2=mysql_fetch_array($sql2))
{
$aankomst_datum=$data2['aankomst_datum'];
$vertrek_datum=$data2['vertrek_datum'];
while ($aankomst_datum <> $vertrek_datum) {
if ($aankomst_datum == $sqldate)
{$check = false; $aankomst_datum = $vertrek_datum;}
else {$aankomst_datum = date( "Y-m-d", strtotime( "$aankomst_datum +1 day" ) );}
}
while ($aankomst_datum <> $vertrek_datum) {
if ($aankomst_datum == $sqldate2)
{$check = false; $aankomst_datum = $vertrek_datum;}
else {$aankomst_datum = date( "Y-m-d", strtotime( "$aankomst_datum +1 day" ) );}
}}
if ($check <> TRUE){echo "<p> Onze exucesses maar het huisje op $huisplaats is al verhuurt tussen deze data. <br> <input type='Button' value='Ga Terug' onClick='javascript:history.back();'> </p>";}
else{
$klantnummer = $_SESSION['klantnummer'];
$insert ="INSERT INTO reserveren(klantnummer, huis, aankomst_datum, vertrek_datum)
VALUES ('".$klantnummer."', '".$huis."', '".$sqldate."', '".$sqldate2."')";
$result = mysql_query($insert)or die ("INSERT FOUT: " .mysql_error());
echo "<p>De reservering is succesvol verlopen,<br> Uw aankomstdatum is : $aankomstdatum <br>uw verterkdatum is : $vertrekdatum.";
}}}}}}
else {
$query=" SELECT * FROM huisjes
WHERE huis = $huis";
$sql=mysql_query($query) or die ("FOUT ; " .mysql_error());
while($data=mysql_fetch_array($sql))
$afbeelding=$data['afbeelding'];
$huisplaats= $_SESSION['huisplaats'];
$prijs = $_SESSION['prijs'];
echo ("<p><img src='$afbeelding' alt='Vakantiehuis' width='200' height='160' /><br><br>
<p> U heeft gekozen voor $huisplaats . <br>
De kosten zijn €$prijs,- per dag. </p><br>
<p>
Boeking:<br />
Gewenste aankomst datum:
<input size='2' type='text' name='adag'> - <input size='2' type='text' name='amaand'> - <input size='4' type='text' name='ajaar' value='$JAAR'><br>
Gewenste vertrek datum :
<input size='2' type='text' name='vdag'> - <input size='2' type='text' name='vmaand'> - <input size='4' type='text' name='vjaar' value='$JAAR'><br>
<input type='submit' name='submit' value='Reserveer Nu!'>
");
}}
?>
</form>
Hopenlijk kunnen jullie mij helpen met dit laaste probleem