Daniel Brown wrote: > On Jan 4, 2008 12:06 PM, afan pasalic <afan@xxxxxxxx> wrote: >> hi >> I have function >> function get_content($client_id, $form_id, $index1) >> { >> $query = mysql_query(" >> SELECT content >> FROM infos >> WHERE client_id=".$client_id." AND form_id=".$form_id." AND >> index1='".$index1."'"); >> if (mysql_num_rows($query) > 0) >> { >> $result = mysql_fetch_assoc($query); >> return $result['content']; >> } >> else >> { >> get_content(0, 0, $index1); // get default value >> } >> } >> >> When I call it >> $CONTENT = get_content(12, 104, 'merchant'); >> echo $CONTENT; // empty, nothing >> >> But if I use global in the function >> >> function get_content($client_id, $form_id, $index1) >> { >> global $CONTENT; >> $query = mysql_query(" >> SELECT content >> FROM infos >> WHERE client_id=".$client_id." AND form_id=".$form_id." AND >> index1='".$index1."'"); >> if (mysql_num_rows($query) > 0) >> { >> $result = mysql_fetch_assoc($query); >> $CONTENT = $result['content']; >> } >> else >> { >> get_content(0, 0, $index1); >> } >> } >> >> >> get_content(12, 104, 'merchant'); >> echo $CONTENT; # Shows correct. >> >> What's wrong with first solution? >> >> Thanks for any help. > > Functions only use variables within their own scope, unless > explicitly told to consider a variable as a global (or if the variable > is a SUPERGLOBAL). > not quite sure I understand?!? :( -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php