What am I missing here? Help!
Posted on
16th Feb 2014 07:03 pm by
admin
Hello all!. I can't seem to get this working right. Well - it renders right, but something is going wrong. It's a set of filters for events. The filter marked "type" (category) works fine - but the ones for "location" and "venue" do nothing. They don't show an error, they just don't function.
Any help would be appreciated!
Did you know?Explore Trending and Topic pages for more stories like this.
This is the code:
Code: [Select]$typeQuery = "SELECT DISTINCT eventCategory FROM eventcal_events where userSubmitted = '0' ORDER BY eventCategory";
$typeList = mysql_query($typeQuery) or die(mysql_error());
$numtypes = mysql_num_rows($typeList);
$typeselect = "<select name="type" style="width:110px;">";
if($type == "All"){
$all = "selected";
$typefilter = "";
} else {
if ($type <> "") {
$typefilter = "AND eventCategory='" . $type . "'";
}
}
$typeselect .= "<option value="All" " . $all . ">All Categories</option>";
while($typearray = mysql_fetch_array($typeList)){
if($typearray["eventCategory"] != "") {
$selected = "";
if($typearray["eventCategory"] == $type) {
$selected = "selected";
}
$typeselect .= "<option value="" . $typearray["eventCategory"] . "" " . $selected . ">" . substr($typearray["eventCategory"],0,15) . "</option>";
}
}
$typeselect .= "</select>";
#if($numtypes < 2) {
# $typeselect = "";
#}
$locationQuery = "SELECT DISTINCT eventLocation FROM eventcal_events where userSubmitted = '0' ORDER BY eventLocation";
$locationList = mysql_query($locationQuery) or die(mysql_error());
$numtypes = mysql_num_rows($locationList);
$locationselect = "<select name="location" style="width:110px;">";
if($location == "All"){
$all = "selected";
$locationfilter = "";
} else {
if ($location <> "") {
$locationfilter = "AND eventLocation='" . $location . "'";
}
}
$locationselect .= "<option value="All" " . $all . ">All Locations</option>";
while($locationarray = mysql_fetch_array($locationList)){
if($locationarray["eventLocation"] != "") {
$selected = "";
if($locationarray["eventLocation"] == $location) {
$selected = "selected";
}
$locationselect .= "<option value="" . $locationarray["eventLocation"] . "" " . $selected . ">" . $locationarray["eventLocation"] . "</option>";
}
}
$locationselect .= "</select>";
#if($numtypes < 2) {
# $locationselect = "";
#}
$venueQuery = "SELECT DISTINCT eventVenue FROM eventcal_events where userSubmitted = '0' ORDER BY eventVenue";
$venueList = mysql_query($venueQuery) or die(mysql_error());
$numtypes = mysql_num_rows($venueList);
$venueselect = "<select name="venue" style="width:110px;">";
if($venue == "All"){
$all = "selected";
$venuefilter = "";
} else {
if ($venue <> "") {
$venuefilter = "AND eventVenue='" . $venue . "'";
}
}
$venueselect .= "<option value="All" " . $all . ">All Venues</option>";
while($venuearray = mysql_fetch_array($venueList)){
if($venuearray["eventVenue"] != "") {
$selected = "";
if($venuearray["eventVenue"] == $venue) {
$selected = "selected";
}
$venueselect .= "<option value="" . $venuearray["eventVenue"] . "" " . $selected . ">" . $venuearray["eventVenue"] . "</option>";
}
}
$venueselect .= "</select>";
#if($numtypes < 2) {
# $venueselect = "";
#}
$dow = "";
if ($_GET['dow'] <> "") {
$dow = $_GET['dow'];
}
if ($_POST['dow'] <> "") {
$dow = $_POST['dow'];
}
if ($dow == 7) {
$dow = "";
}
$dayselect = "<select name="dow" style="width:110px;">";
if ($dow == "") {
$selected = "selected";
} else {
$selected = "";
}
$dayselect .= "<option value="7" " . $selected . ">All Days</option>";
if ($dow == 1) {
$selected = "selected";
} else {
$selected = "";
}
$dayselect .= "<option value="1" " . $selected . ">Monday</option>";
if ($dow == 2) {
$selected = "selected";
} else {
$selected = "";
}
$dayselect .= "<option value="2" " . $selected . ">Tuesday</option>";
if ($dow == 3) {
$selected = "selected";
} else {
$selected = "";
}
$dayselect .= "<option value="3" " . $selected . ">Wednesday</option>";
if ($dow == 4) {
$selected = "selected";
} else {
$selected = "";
}
$dayselect .= "<option value="4" " . $selected . ">Thursday</option>";
if ($dow == 5) {
$selected = "selected";
} else {
$selected = "";
}
$dayselect .= "<option value="5" " . $selected . ">Friday</option>";
if ($dow == 6) {
$selected = "selected";
} else {
$selected = "";
}
$dayselect .= "<option value="6" " . $selected . ">Saturday</option>";
if ($dow == "0") {
$selected = "selected";
} else {
$selected = "";
}
$dayselect .= "<option value="0" " . $selected . ">Sunday</option>";
$dayselect .= "</select>";
if ($dow <> "") {
$day_where = " and (DATE_FORMAT(eventDate,'%w') = '$dow' or DATE_FORMAT(eventDateEnd,'%w') = '$dow')";
} else {
$day_where = "";
}
# keyword filter
$keyword = "";
if ($_POST['keyword'] <> "Enter Keyword(s)" and $_POST['keyword'] <> "") {
$keyword = $_POST['keyword'];
$keywordfilter = " and (eventTitle like '%$keyword%' or eventDescription like '%$keyword%')";
} else {
$keyword = "Enter Keyword(s)";
$keywordfilter = "";
}
$keywordbox = "<input type=text name=keyword id=keyword value='$keyword' class='subnav' size=20px onfocus="this.value='';">";
$countQuery = "select * from eventcal_events where userSubmitted = '0' $wheredate $day_where $typefilter $venuefilter $locationfilter $keywordfilter";
$countList = mysql_query($countQuery) or die(mysql_error());
$record_count = mysql_num_rows($countList);
list($eventsperpage) = mysql_fetch_array(mysql_query("SELECT value FROM eventcal_settings WHERE variable='events_per_page'")) or die(mysql_error());
if($eventsperpage == "All"){
$limit = "";
$eventsperpage = $record_count;
} else {
$limit = "limit " . $start . ", " . ($eventsperpage + 1);
}
list($sort) = mysql_fetch_array(mysql_query("SELECT value FROM eventcal_settings WHERE variable='sort'"));
if ($sort == "date") {
$order_it = "eventDate, eventTitle";
} else {
$order_it = "eventTitle";
}
$eventQuery = "select * from eventcal_events where userSubmitted = '0' $wheredate $day_where $typefilter $venuefilter $locationfilter $keywordfilter order by $order_it " . $limit;
# echo $eventQuery . "
";
$eventList = mysql_query($eventQuery) or die(mysql_error());
$row_count = mysql_num_rows($eventList);
if ($record_count > 0) {
$navigate = "Events " . ($start + 1) . " - ";
if ($row_count > $eventsperpage) {
$navigate .= ($start + $eventsperpage);
} else {
$navigate .= ($start + $row_count);
}
$navigate .= " of " . $record_count;
if ($start > 0) {
$navigate = "<a href=?month=$month&year=$year&start=" . ($start - $eventsperpage) . ">< Prev</a> " . $navigate;
}
if (($start + $eventsperpage) < $record_count) {
$navigate .= " <a href=?month=$month&year=$year&start=" . ($start + $eventsperpage) . ">Next ></a>";
}
} else {
$navigate = "There are no events to display.";
}
This is the html on the page:
Code: [Select]# filter settings
$fil_query = "select variable, value from eventcal_settings where variable like 'filter_%'";
$fil_rs = mysql_query($fil_query);
$filters = array();
$col_ct = 0;
while ($fil_row = mysql_fetch_array($fil_rs)) {
$filters[$fil_row['variable']] = $fil_row['value'];
if ($fil_row['value'] == "Y") {
$col_ct++;
}
}
?>
<table border="0" cellspacing="0" cellpadding="0">
<form name="s2" method="post" action="">
<tr><td colspan="<?=$col_ct ?>" align="right" class="subnav">
<p align="left"><strong>Filter Events by</strong>: </td></tr>
<tr valign="top">
<? if($filters['filter_cat'] == "Y") { ?>
<td align="left" class="subnav"><?=$typeselect ?></td>
<? } ?>
<? if($filters['filter_loc'] == "Y") { ?>
<td align="left" class="subnav"><?=$locationselect ?></td>
<? } ?>
<? if($filters['filter_ven'] == "Y") { ?>
<td align="left" class="subnav"><?=$venueselect ?></td>
<? } ?>
<? if ($col_ct > 3) { ?></tr><tr><? } ?>
<? if($filters['filter_day'] == "Y") { ?>
<td align="left" class="subnav"><?=$dayselect ?></td>
<? } ?>
<? if($filters['filter_month'] == "Y") { ?>
<td align="left" class="subnav"><?=$monthselect ?></td>
<? } ?>
<? if($filters['filter_keyword'] == "Y") { ?>
<td align="left" class="subnav"><?=$keywordbox ?></td>
<? } ?>
</tr>
<tr><td colspan="<?=$col_ct ?>"><input type=submit value="Go"></td></tr>
</form>
</table>