-Zeus- Posted March 18, 2009 Share Posted March 18, 2009 I know that i can use the command global $var inside a function when the var is already defined, but i have a slight problem. Here is what i am doing. function dbget($db,$idname,$id,$val) { $result = mysql_fetch_array(mysql_query("SELECT $val FROM $db WHERE $idname='" . $id . "'")); echo $result[$val]; } This works fine. However, when I try this: function dbget($db,$idname,$id) { global $result; $result = mysql_fetch_array(mysql_query("SELECT * FROM $db WHERE $idname='" . $id . "'")); } the variable $result is never set. I tried initing it before calling the var, but that was no good. Am i doing something wrong? Link to comment https://forums.phpfreaks.com/topic/150039-solved-global-array-in-function/ Share on other sites More sharing options...
PFMaBiSmAd Posted March 18, 2009 Share Posted March 18, 2009 The point of writing a function is that it returns the result that the code in the function produces - http://us3.php.net/return Link to comment https://forums.phpfreaks.com/topic/150039-solved-global-array-in-function/#findComment-787988 Share on other sites More sharing options...
samshel Posted March 18, 2009 Share Posted March 18, 2009 it should work !! i tried to do the same thing with sample code and it works..may be there is some problem in function calling or surrounding code. <?php $str = ""; function setString($val){ global $str; $str = $val; } setString("Test"); echo $str; ?> but yes ! i agree with PFMaBiSmAd Link to comment https://forums.phpfreaks.com/topic/150039-solved-global-array-in-function/#findComment-787991 Share on other sites More sharing options...
-Zeus- Posted March 18, 2009 Author Share Posted March 18, 2009 Thanks, I feel stupid. By putting return(mysql_fetch_array(mysql_query()));, I can now say $result=dbget(); Thanks Link to comment https://forums.phpfreaks.com/topic/150039-solved-global-array-in-function/#findComment-788001 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.