På mit bookingsystem er alle dage med bookinger fremhævet på en månedskalender. Jeg klikker på et link til liste med daglige bookinger, men ligemeget hvilken dato jeg klikker på får jeg vist den aktuelle dags bookinger (altså ikke den valgte dag).
Jeg vil gerne have vist - kun den valgte dags bookinger i listen.
Hvordan får jeg lige det til at hænge sammen.
Koden hvori linket befinder sig
<?php
function events2_cal_cent()
{
global $config, $cfg, $lang;
$month=$_GET['month'];
$year=$_GET['year'];
if ((!$year) || ($year < 1970) || ($year > 2036) || (!is_numeric($year))) { $year = date("Y"); }
if ((!$month) || ($month < 1) || ($month > 12) || (!is_numeric($month))) { $month = date("m"); }
$this_day = mktime(0,0,0,date("m"),date("d"),date("Y"));
$month_end = date("t",mktime(0,0,0,$month+1,0,$year));
$month_start_day = date("w",mktime(0,0,0,$month,1,$year));
if ($month_start_day == 0) { $month_start_day = 7; }
$days = Array("$lang[EVENTS2_D1]","$lang[EVENTS2_D2]","$lang[EVENTS2_D3]","$lang[EVENTS2_D4]","$lang[EVENTS2_D5]","$lang[EVENTS2_D6]","$lang[EVENTS2_D7]");
$months = Array("$lang[EVENTS2_M01]","$lang[EVENTS2_M02]","$lang[EVENTS2_M03]","$lang[EVENTS2_M04]","$lang[EVENTS2_M05]","$lang[EVENTS2_M06]","$lang[EVENTS2_M07]","$lang[EVENTS2_M08]","$lang[EVENTS2_M09]","$lang[EVENTS2_M10]","$lang[EVENTS2_M11]","$lang[EVENTS2_M12]");
echo "<CENTER>";
echo "<table border=0 cellspacing=1 cellpadding=0 width=300>";
echo "<tr><td colspan=7 align=center><font face='Comic Sans MS' size=3>".$months[$month-1]." ".$year."</font></td></tr>";
echo "<tr>";
for ($i=0;$i<7;$i++) { echo "<td bgcolor=#666666 align=center width=25 height=25><font face='Comic Sans MS'>".$days[$i]."</font></td>"; }
echo "</tr>";
echo "<tr>";
$days_open=0;
for ($i=1;$i<$month_start_day;$i++) {
echo "<td bgcolor=#CCCCCC height=25 width=25> </td>";
$days_open++;
}
$row = 1;
for ($i=1;$i<=$month_end;$i++) {
$day = date("w",mktime(0,0,0,$month,$i,$year));
$qdate=$year."-".$month."-".$i;
$dag=$year."-".$month."-".date(d);
$ret = db_query( "select count(cod) from {$config["prefix"]}_events2 where date='$qdate' and active='Y'" ) or die(db_error());
$tot_events2 = db_result( $ret, 0, 0 );
db_free_result($ret);
$evst="";
$even="";
if ($tot_events2<>0)
{ $evst="<u><b><a title=\\"$lang[EVENTS2_DAILY_EVENTS]\\" href=events2.php?year=$year&month=$month&>"; $even="</a></u></b>"; }
if (mktime(0,0,0,$month,$i,$year) == $this_day)
{
echo "<td bgcolor=#333333 height=25 width=25 align=center><font face='Comic Sans MS'>".$evst.$i.$even."</font></td>";
}else{
echo "<td bgcolor=#999999 height=25 width=25 align=center><font face='Comic Sans MS'>".$evst.$i.$even."</font></td>";
}
if (($day == 0) && ($i != $month_end)) { echo "</tr><tr>"; $row++; }
}
$days_over= (($row*7)-$month_end)-$days_open;
for ($i=1;$i<=$days_over;$i++) {
echo "<td bgcolor=#CCCCCC height=25 width=25> </td>";
}
echo "</tr>";
if ($month==1) {
$prev_month = 12;
$prev_year = $year-1;
}
else {
$prev_month = $month-1;
$prev_year = $year;
}
if ($month==12) {
$next_month=1;
$next_year=$year+1;
}
else {
$next_month=$month+1;
$next_year=$year;
}
echo "<tr><td colspan=7 align=center><a href=?month=".$prev_month."&year=".$prev_year.">$lang[EVENTS2_A_PREV]</a> <a href=?month=".$next_month."&year=".$next_year.">$lang[EVENTS2_A_NEXT]</a></td></tr></table>";
$vandaag = getdate();
$maand = $vandaag['mon'];
$mdag = $vandaag['mday'];
$jaar = $vandaag['year'];
echo "</CENTER>";
}
?>
Koden hvor den valgte dag skal findes (defineres).
<?php
function events2_daily_events()
{
global $config, $cfg, $lang;
$date=$_GET['date'];
$month=$_GET['month'];
$year=$_GET['year'];
$year=$_GET['year'];
if ( $year=="" )
{ $year = date("Y"); }
if ( $month=="" )
{ $month = date("m"); }
$dag=$year."-".$month."-".date(d);
$ret = db_query("select * from {$config["prefix"]}_events2 where active='Y' and date = '$dag' order by date, title, from_, from2_ ") or die(db_error("Geen gegevens"));
echo "<table width=90% border=0 align=center cellpadding=2 cellspacing=0>";
while($row = db_fetch_array($ret))
{
$tyear = intval(substr($row["date"],0,4));
$tmonth = intval(substr($row["date"],5,2));
$tday = intval(substr($row["date"],8,2));
if( $class=="row2" ) $class = "row1";
else $class = "row2";
echo "\\t<tr class=\\"$class\\">\\n\\t\\t<td class=\\"$class\\"><a title=\\"$lang[EVENTS2_LIST_DETAIL];\\" href=events2.php?month=$month&year=$year&cod=$row[cod]>".$row["date"]."</a></td>\\n
\\t\\t<td><a title=\\"$lang[EVENTS2_LIST_DETAIL];\\" href=events2.php?month=$month&year=$year&cod=$row[cod]><u><td class=\\"$class\\">".$row["title"]."</u></a></td>\\n
\\t\\t<td><td class=\\"$class\\">".$row["from_"].".".$row["from2_"]."</td><td><td class=\\"$class\\">".$row["till"].".".$row["still"]."</td><td><td class=\\"$class\\">".$row["description"]."</td></tr>";
}
echo "</TABLE>";
db_free_result($ret);
}
?>
Stigman
[Redigeret d. 27/07-04 19:46:53 af Allan Christensen]
2 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 4 karma
Du får altid dags dato, og det gør du så vidt jeg kan se, fordi du altid beder om den ;-)
Den første ting jeg tror giver problemer, er de parametre du sender med i dit link. Du skriver følgende:
$evst="<u><b><a title=\\"$lang[EVENTS2_DAILY_EVENTS]\\" href=events2.php?year=$year&month=$month&>"
-hvilket ikke sender den valgte dato med!? -altså skal variablen $evst så vidt jeg kan se udvides:
$evst="<u><b><a title=\\"$lang[EVENTS2_DAILY_EVENTS]\\" href=events2.php?year=$year&month=$month&date=$i>"
Herefter videre til modtagelsen af denne. Prøv at kig nærmere på denne kodelinje, hvor du danner $dag, som du anvender i din sql query til at finde den valgte dag:
$dag=$year."-".$month."-".date(d);
date(d) vil jo altid giver dig dags dato ;-) du skal bruge din $date som du henter fra $_GET arrayet i starten af funktionen (den dato du sender med til siden via ovenstående link)
Håber det hjælper dig!
Venlig hilsen
Jon Krondal Honum