Re: function I created doesn't work
| From: | Jim Lucas | Date: | Fri, 04 Jan 2008 19:03:56 +0000 |
| Subject: | Re: function I created doesn't work | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-266630@lists.php.net to get a copy of this message | ||
afan pasalic 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);
return get_content(0, 0, $index1);
you need to return the results of the second call.
When you hit the second call, you are not returning the results.
> }
> }
>
>
> get_content(12, 104, 'merchant');
> echo $CONTENT; # Shows correct.
>
> What's wrong with first solution?
>
> Thanks for any help.
>
> -afan
>
--
Jim Lucas
"Some men are born to greatness, some achieve greatness,
and some have greatness thrust upon them."
Twelfth Night, Act II, Scene V
by William Shakespeare