No problem. Okay, responses:
1) If $newsletters_table is a variable defined in global scope of the script, you don't need to do anything to get it to work. If $newsletters_table is created from HTML form input, then you'll need to access it via $_GET or $_POST.
More clarification:
<?php
function do_stuff()
{
global $some_var;
echo $some_var;
}
function change_it()
{
global $some_var;
$some_var = "Changed!";
}
$some_var = "Hello, world.";
do_stuff(); // prints "Hello, world."
change_it();
do_stuff(); // prints "Changed!"
$some_var = "Goodbye.";
do_stuff(); // prints "Goodbye."
change_it();
do_stuff(); // prints "Changed!"
?>
See, what the 'global' keyword does is import a global variable into the local function scope. Normally, variables declared within a function are ONLY visible within that function, and their values go away as soon as the function ends.
For more info:
http://www.php.net/variables.scope
2) Yes.
3) The output of phpinfo() should tell you which php.ini file is being used to set the variables. If you have PHP running as an ISAPI module, you have to restart IIS for configuration changes to take effect. That's because IIS loads the PHP interpreter into memory when it starts up. PHP parses php.ini on startup only, so changes to the configuration file won't take effect until PHP is restarted.
If, for some reason, you have PHP running as a CGI, then IIS doesn't load the PHP interpreter in memory, it runs the php.exe application every time a script is run. This means that PHP processes php.ini for EVERY SCRIPT that's executed on your system. This has the benefit of having configuration changes become active immediately, but it's incredibly inefficient and prone to security risks.
Take care,
Nik
http://www.bigaction.org/