Okay so I have 4 drop-down boxes the user can pick a choice from. At the very top of all of them, is a blank spot - I have the blank spot there so if they don't know of a selection in a certain category, they can leave it out.
however, when trying to search or browse using that, if, say, the user picks 2/4 categories, it will give me undefined indexes when it is passed from the form to my results page. Is there an easy way of finding if a global is empty and not including it in my SQL query?
here's my code, btw, just in case:
form -
<form name="browse" id="browse" action="browseresults.php" method="post">
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<tbody>
<tr>
<td width="50%" height="43" class="addrow">Pick a Park Site:<br>
<?php
print "<select name=\"p_Site_search\" class=\"addtext\">
<option></option>";
$site_sql="SELECT p_Site FROM images GROUP BY p_Site";
$site_results=mysql_query($site_sql, $sql_conn);
while ($siterow=mysql_fetch_array($site_results, MYSQL_ASSOC))
{
print "<option>".$siterow['p_Site']."</option>";
}
?></td>
<td width="50%" class="addrow">Enter a keyword for a Site Project:<br>
<?php
print "<select name=\"p_Project_search\" class=\"addtext\">
<option></option>";
$project_sql="SELECT p_Project FROM images GROUP BY p_Project";
$project_results=mysql_query($project_sql, $sql_conn);
while ($projectrow=mysql_fetch_array($project_results, MYSQL_ASSOC))
{
print "<option>".$projectrow['p_Project']."</option>";
}
?>
</td>
</tr>
<tr>
<td width="50%" class="addrow">Pick a Sheet Type:<br> <?php
print "<select name=\"s_Type_search\" class=\"addtext\">
<option></option>";
$type_sql="SELECT s_Type FROM images GROUP BY s_Type";
$type_results=mysql_query($type_sql, $sql_conn);
while ($typerow=mysql_fetch_array($type_results, MYSQL_ASSOC))
{
print "<option>".$typerow['s_Type']."</option>";
}
?></td>
<td width="50%" class="addrow">Pick a Sheet Iteration:<br> <?php
print "<select name=\"s_Iteration_search\" class=\"addtext\">
<option></option>";
$iteration_sql="SELECT s_Iteration FROM images GROUP BY s_Iteration";
$iteration_results=mysql_query($iteration_sql, $sql_conn);
while ($iterationrow=mysql_fetch_array($iteration_results, MYSQL_ASSOC))
{
print "<option>".$iterationrow['s_Iteration']."</option>";
}
?></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="submit" name="submitbrowse" value="Browse Now" class="addbutton">
</div></td>
</tr>
</tbody>
</table>
</form>
And here's the code that handles the query from the from on my results page -
$sql_conn=mysql_connect($Host, $User, $Pass) or die("MySQL Error #".mysql_errno().": ".mysql_error());
$sql_db=mysql_select_db($DB);
$SQL="SELECT COUNT(*) AS Total FROM ".$Table." WHERE p_Site='".$_POST['p_Site_search']."' AND p_Project='".$_POST['p_Project_search']."' AND s_Type='".$_POST['s_Type_search']."' AND s_Iteration='".$_POST['s_Iteration_search']."' AND p_Project LIKE '%".$_POST['p_Project_Search']."%'";
$SQL_Result=mysql_query($SQL, $sql_conn);
$SQL_Result_Array=mysql_fetch_array($SQL_Result);
$Total=$SQL_Result_Array['Total'];
$SQL="SELECT * FROM ".$Table." WHERE p_Site='".$_POST['p_Site_search']."' AND p_Project='".$_POST['p_Project_search']."' AND s_Type='".$_POST['s_Type_search']."' AND s_Iteration='".$_POST['s_Iteration_search']."' AND p_Project LIKE '%".$_POST['p_Project_Search']."%' ORDER BY p_Site DESC";