Slettet bruger
01. oktober 2004 - 16:43
Der er
5 kommentarer og
1 løsning
Reservation, checke om tidspunkt er gyldigt
Hej
Jeg har en kalender hvor brugere kan foretage reservationer af biler.
Jeg har brug for en funktion og en ifsætning der checker om bussen og tidspunktet allerede er optaget.
Der må ikke kunne foretages reservationer indenfor tidsrummet - altså hvis der er booket kl. 12.00 - 14.00 må man ikke kunne bookes kl. 13.00 - 15.00.
Jeg har disse felter der skal checkes: from_, till_, date, title.
Jeg har fundet lidt kode fra et tidligere spørgmål der svarer til det jeg har brug for, men kan ikke få det til at virke.
function fribooking( $from_, $till, $date, $title ) {
$sql = "".
"SELECT * ".
"FROM wt_events2 ".
"WHERE ".
"( ".
" ( title='$title' ) AND ".
" ( date='$date' ) AND ".
" ( ".
" (( from_ < '$from_' ) AND ( till > '$from_' )) OR ".
" (( from_ < '$till' ) AND ( till > '$till' )) OR ".
" (( from_ < '$from_' ) AND ( till > '$till' )) OR ".
" (( from_ > '$from_' ) AND ( till < '$till' )) OR ".
" (( from_ = '$from_' ) AND ( till = '$till' )) ".
" )".
")";
$result = mysql_query($sql)
or die(mysql_error());
// test om der er nogle aftaler, som konflikter med den ønskede aftale....
if(mysql_num_rows($result) > 0)
return false; /* der er fundet aftaler */
return true;
}
http://eksperten.dk/spm/444757Måske er der brug for yderligere forklaring !
Håber i kan hjælpe
Slettet bruger
01. oktober 2004 - 17:36
#2
Hmm
Jeg kan ikke få det til at funke, men måske hjælper det hvis jeg vedlægger min add_event2.php
<?php
include_once("core/main.php");
// this is forced here for security reasons
if( !check_module("events2") ) die( "module not enabled" );
require_once("phpdbform/phpdbform_form.php");
$index_page = false;
$page_name = $lang["EVENTS2_ADD"];
draw_header();
$ok_add="N";
if( $cfg["events2"]["useradd1"] )
{
if( $cfg["events2"]["useradd"] )
{
$ok_add="Y";
}
}
if( $cfg["events2"]["useradd"] )
{
if( $_SESSION["wt"]["logged"] )
{ $ok_add="Y"; }
}
if( $ok_add=="N" )
{
theme_draw_centerbox_open( $lang["EVENTS2_ADD"] );
print "<span class=\"error\">{$lang["EVENTS2_NOT_ADD"]}</span>";
theme_draw_centerbox_close();
draw_footer();
exit;
}
else
{
$form = new phpform( "addevent2", "add_event2.php" );
$form->add_static_listbox( "title", $lang["EVENTS2_A_TITLE"], "Røde Lyn, Sølvpilen");
$form->add_date( "date", $lang["EVENTS2_A_DATE"], $cfg["core"]["date_format"] );
$form->fields["date"]->value = date("Y-m-d");
$form->add_static_listbox( "from_", $lang["EVENTS2_A_FROM"], "00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,");
$form->add_static_listbox( "from2_", $lang["EVENTS2_A_FROM2"], "00,15,30,45");
$form->add_static_listbox( "till", $lang["EVENTS2_A_TIL"], "00,01,02,03,04,05,06,07,08,09,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24");
$form->add_static_listbox( "still", $lang["EVENTS2_A_STIL"], "00,15,30,45");
$form->add_static_listbox( "description", $lang["EVENTS2_A_DESC"], "Hus A,Hus B,Hus C,Hus D,Annekset,Aktivitetshjørnet,Sportsgruppen,Musehul,Kælder,Kontor,Køkken");
$form->add_textbox( "who", $lang["EVENTS2_A_WHO"] , 40, 255 );
$form->add_textarea( "add_desc", $lang["EVENTS2_A_ADDDESC"], 40, 5 );
theme_draw_centerbox_open( $lang["EVENTS2_ADD"] );
$ok = false;
$errors = array();
if( $form->process() )
{
if( !isset($_SESSION["wt"]["addevent2"]) )
{
$form->fields["title"]->value = trim(strip_tags($form->fields["title"]->value));
$form->fields["date"]->value = trim(strip_tags($form->fields["date"]->value));
$form->fields["from_"]->value = trim(strip_tags($form->fields["from_"]->value));
$form->fields["from2_"]->value = trim(strip_tags($form->fields["from2_"]->value));
$form->fields["till"]->value = trim(strip_tags($form->fields["till"]->value));
$form->fields["still"]->value = trim(strip_tags($form->fields["still"]->value));
$form->fields["description"]->value = trim(strip_tags($form->fields["description"]->value));
$form->fields["who"]->value = trim(strip_tags($form->fields["who"]->value));
$form->fields["add_desc"]->value = trim(strip_tags($form->fields["add_desc"]->value));
$form->fields["location"]->value = trim(strip_tags($form->fields["location"]->value));
if( !empty($errors) )
{
print "<div class=\"error\">";
while( $err = each($errors) )
{
print "{$err[1]}<br>\n";
}
print "</div>\n";
} else $ok = true;
if( $ok )
{
$stmt = "insert into {$config["prefix"]}_events2 set"
." title = '".addslashes($form->fields["title"]->value)."',"
." date = '".addslashes($form->fields["date"]->value)."',"
." active = 'Y',"
." description = '".addslashes($form->fields["description"]->value)."',"
." from_ = '".addslashes($form->fields["from_"]->value)."',"
." from2_ = '".addslashes($form->fields["from2_"]->value)."',"
." till = '".addslashes($form->fields["till"]->value)."',"
." still = '".addslashes($form->fields["still"]->value)."',"
." who = '".addslashes($form->fields["who"]->value)."',"
." userid ='".$_SESSION[wt][uid]."',"
." add_desc = '".addslashes($form->fields["add_desc"]->value)."',"
." location = '".addslashes($form->fields["location"]->value)."'";
$ret = db_query( $stmt );
if( !$ret )
{
$ok = false;
print "<div class=\"error\">".$lang["ERROR_04"]."<br>".db_error()."</div>";
} else {
if( $cfg["events2"]["sendmail"] )
{
print "<div class=\"info\">".$lang[EVENTS2_ADD_OK]."</div>";
mail($cfg["core"]["mail_admin"], $lang["EVENTS2_M_01"], $lang["EVENTS2_M_02"]."\n\n".$cfg["core"]["url"],"From: ".$cfg["core"]["mail_admin"]."\n");
}
$_SESSION["wt"]["addevent2"] = true;
}
}
} else $ok = true;
} else {
if( isset($_SESSION["wt"]["addevent2"]) ) unset($_SESSION["wt"]["addevent2"]);
}
if( !$ok ) $form->draw();
theme_draw_centerbox_close();
theme_draw_centerbox_open( $lang["EVENTS_LIST_EVENTS"] );
events2_draw_list();
theme_draw_centerbox_close();
draw_footer();
}
?>
Hvor sætter jeg lige den kode ind ?