I finally got the function to work. However I have a problem with another function. It is almost exactly like the origional function but in this function I am determining the days instead of the month. I made the same changes to the days function as I did to the month function. However no value is being set to be returned. I can't find my error. My function is below: function determineDay () { $return = ""; $query1 = mysql_query("SELECT months FROM Month WHERE m_id = month(curdate())"); $query2 = mysql_query("SELECT dayNum FROM Days WHERE dayNum = day(curdate())"); $query3 = mysql_query("SELECT year FROM Year WHERE year = year(curdate())"); $query1_data = mysql_fetch_assoc($query1); $query2_data = mysql_fetch_assoc($query2); $query3_data = mysql_fetch_assoc($query3); switch ($query1_data["months"]) { case "January": case "March": case "May": case "July": case "August": case "October": case "December": if ($query2_data["dayNum"] == 31) $return .= "SELECT dayNum FROM Days"; else $return .= "SELECT dayNum FROM Days WHERE dayNum >= day(curdate()) +1"; break; case "February": if ($query2_data["dayNum"] == 28 || $query2_data["dayNum"] == 29) { if ($query2_data["dayNum"] == 28) $return .= "SELECT dayNum FROM Days WHERE dayNum <= 28"; else $return .= "SELECT dayNum FROM Days WHERE dayNum <= 29"; } else { if (($query3_data["year"] % 4 == 0) &&($query3_data["year"] % 100 != 0 || $query3_data["year"] % 400 == 0)) $return .= "SELECT dayNum FROM Days WHERE dayNum >= day(curdate()) +1 AND dayNum <=28"; else $return .= "SELECT dayNum FROM Days WHERE dayNum >= day(curdate()) +1 AND dayNum <=29"; } break; case "April": case "June": case "September": case "November": if ($query2_data["dayNum"] == 30) $return .= "SELECT dayNum FROM Days WHERE dayNum <= 30"; else $return .= "SELECT dayNum FROM Days WHERE dayNum >= day(curdate())+1 AND dayNum <= 30"; break; } return $return; } Here is the code for where I output the contents of the query $day = $this->determineDay(); $Day_query = mysql_query($day); while ($a = mysql_fetch_assoc($Day_query)) { $form .=" <option value={$a["dayNum"]}>{$a["dayNum"]}</option>\n"; } $form .=" </select>\n"; If anyone can find my error please let me know. I have looked at this for about an hour and I can't figure it out. Thanks, Paul On 3/27/06, Brady Mitchell <bradym@xxxxxxxxxxx> wrote: > > I have done the following to my code hoping that the fix would work > > > > $query1 = mysql_query("SELECT months FROM Month WHERE m_id = > month(curdate())"); > > //echo $query1 . "<br />"; > > > > $query1_data = mysql_fetch_assoc($query1); > > echo $query1_data . "<br />"; returns Array > > (The word that is) > > Use: print_r($query1_data) or var_dump($query1_data) to see everything > in the array. If you want to use echo, you'd have to echo each index of > the array one at a time with something like: echo $query1_data[0]; > > http://php.net/echo > http://php.net/print_r > http://php.net/var_dump > > > switch ($query1_data) > > { > > You can't switch on an entire array. Switch is used to check the value > of a variable (which could be an index of the array, but not the entire > array). > > Something like this should work: > > switch($query1_data[months]) > { > > } > > http://php.net/switch > > In your original posting you have lines like the following in your > switch statement: > > > if($query2 == 31) > > As someone mentioned, mysql_query returns a resource ID, you then have > to use mysql_fetch_assoc (or one of the other mysql_fetch_* functions) > to get an array that you can use as you are trying to do. > > So after doing: $query2_data = mysql_fetch_assoc($query2); > > You could do: if($query2_data[dayNum] == 31) > > In your switch statement you are checking for the full name of the > month, but your query will be returning the month number. Since you > don't have a default case on your switch statement, $return is never > being set, so " $month = $this->determineMonth(); " is not setting > $month to anything, which is why you are getting error messages. > > http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html > > Brady > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php