Hi There folks.

I was thinking of trying to make a php function in my sites configuration file so that I could keep all mysql database info in one central file.

I should mention that this is the first time I have tried to make my own function.

I have the file started, but can't get it to work like I'd hoped.

Is it possible to set a variable like

$username = "";

in a function and be able to insert that into a file.

I'd assumed that I would call the function and it would set the variable, but so far it hasn't worked.

Here is what I have

function &configDB($db)
$cfg[host]	= "localhost";
$cfg[user]	= "MyDBs";
$cfg[pass]	= "Pass";
$cfg[database]	= "MyDB1";
  $server	= "localhost";
  $dbusername	= "MyDBs";
  $dbpassword	= "Pass";
  $db_name	= "MyDB2";

Then Call it by


Would this be correct.

Help in passing variables would be appreciated.

9 Years
Discussion Span
Last Post by PomonaGrange

Your function variables are LOCAL variables (only visible to the function). You usually have to RETURN a value from the function to pass the value to the outside. Create your complete connection variable in the function and then do:

return $connection;

at the end of the function. Your example does nothing useful.

$db = 'whatever';
$conn = configDB($db);

This will then give you a your connection object in $conn and can be used to run queries:

$result = mysql_query('SELECT * FROM myTable',$conn);

However, you're hard-coding connection data (user + password). This is not recommended, although OK for testing.


Damn! Forgot to code tag the examples. Sorry!


Damn! Forgot to code tag the examples. Sorry!

Not a problem, I caught your gist...

Thanks again.

This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.