Re: function I created doesn't work
| From: | afan pasalic | Date: | Fri, 04 Jan 2008 17:28:41 +0000 |
| Subject: | Re: function I created doesn't work | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-266627@lists.php.net to get a copy of this message | ||
Daniel Brown wrote:
> On Jan 4, 2008 12:06 PM, afan pasalic <afan@afan.net> 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?!?
:(