acpjax Posted November 26, 2006 Share Posted November 26, 2006 Think i posted this in the wrong section first timeFirst of thankyou for looking at this post. Got a quick question.....Currently i have been trying to add an event calendar to my website so i can show when certian things are availible. Beyond that i need to make the event calendar unique for each item.... Each item or listing has a unique id $listingid and what i want to do is place a link on each listing that opens a popup that displays the event calendar. the link will pass the value of the $listingid to the pop up event calendar.What im trying to do is add in another criteria to the basic event calendar tutorial... right now it seems to pull any day that has an event on it. what i need it to do is pull any day that has an event on it AND is = to $listing id...table has the following fieldsevent_idevent_dateevent_avalibilityevent_listingidSo i need to dispay any day that has an event AND WHERE event_listingid = $listingidAny help would be greatly appreciated[code=php:0]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Untitled Document</title></head><body><?php // Database connection variables // Be sure to set these to your own connection $HOST = '************'; $USER = '**********'; $PASS = '**********'; $NAME = '*********'; // Connect to MySQL database $con = mysql_connect($HOST, $USER, $PASS); if (!$con) { // Since the entire script depends on connection, die if connection fails die("Error connecting to MySQL database!"); } mysql_select_db($NAME, $con); function getEventDays($month, $year) { $days = array(); $sql = mysql_query("SELECT DAY(event_date) AS day, COUNT(event_id) FROM calendar_events WHERE MONTH(event_date) = '$month' AND YEAR(event_date) = '$year' GROUP BY day"); if (mysql_num_rows($sql) > 0) { while ($row = mysql_fetch_array($sql)) $days[] = $row['day']; } return $days; } function drawCalendar($month, $year) { // set variables we will need to help with layouts $first = mktime(0,0,0,$month,1,$year); // timestamp for first of the month $offset = date('w', $first); // what day of the week we start counting on $daysInMonth = date('t', $first); $monthName = date('F', $first); $weekDays = array('Su', 'M', 'Tu', 'W', 'Th', 'F', 'Sa'); $eventDays = getEventDays($month, $year); // Start drawing calendar $out = "<table id=\"myCalendar\" border =\'1'>\n"; $out .= "<tr><th colspan=\"7\">$monthName $year</th></tr>\n"; $out .= "<tr>\n"; foreach ($weekDays as $wd) $out .= "<td class=\"weekDays\">$wd</td>\n"; $i = 0; for ($d = (1 - $offset); $d <= $daysInMonth; $d++) { if ($i % 7 == 0) $out .= "<tr>\n"; // Start new row if ($d < 1) $out .= "<td class=\"nonMonthDay\"> </td>\n"; else { if (in_array($d, $eventDays)) { $out .= "<td class=\"monthDay\" td bgcolor=\"red\">\n"; $out .= "<a href=\"?year=$year&month=$month&day=$d\">$d</a>\n"; $out .= "</td>\n"; } else $out .= "<td class=\"monthDay\">$d</td>\n"; } ++$i; // Increment position counter if ($i % 7 == 0) $out .= "</tr>\n"; // End row on the 7th day } // Round out last row if we don't have a full week if ($i % 7 != 0) { for ($j = 0; $j < (7 - ($i % 7)); $j++) { $out .= "<td class=\"nonMonthDay\"> </td>\n"; } $out .= "</tr>\n"; } $out .= "</table>\n"; return $out; } $year = isset($_GET['year']) ? $_GET['year'] : date('Y'); $month = isset($_GET['month']) ? $_GET['month'] : date('m'); echo drawCalendar($month, $year); // Previous month link $prevTS = strtotime("$year-$month-01 -1 month"); // timestamp of the first of last month $pMax = date('t', $prevTS); $pDay = ($day > $pMax) ? $pMax : $day; list($y, $m) = explode('-', date('Y-m', $prevTS)); echo "<p>\n"; echo "<a href=\"?year=$year&month=$m&day=$pDay\">« Prev</a> |\n"; // Next month link $nextTS = strtotime("$year-$month-01 +1 month"); $nMax = date('t', $nextTS); $nDay = ($day > $nMax) ? $nMax : $day; list($y, $m) = explode('-', date('Y-m', $nextTS)); echo "<a href=\"?year=$y&month=$m&day=$nDay\">Next »</a>\n"; echo "</p>\n"; // Calendar is done, let's list events for selected day $sql = mysql_query(" SELECT * FROM calendar_events WHERE event_date = '".$year."-".$month."-".$day."' AND event_listingid = ".$listingid." "); if (mysql_num_rows($sql) > 0) { while ($e = mysql_fetch_array($sql)) { echo "<p>$e[event_avalibility]</p>\n"; } } else { echo "<p>No events today</p>\n"; }?></body></html>[/code] Link to comment https://forums.phpfreaks.com/topic/28524-event-calendar-modification/ Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.