By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
455,772 Members | 1,272 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 455,772 IT Pros & Developers. It's quick & easy.

global variable in function

P: n/a
Hello, I'm a newbie using PHP. Having some trouble using a variable
within a function.

I use some mysql code to assign a value to $myvariable.
I verify that it is getting the value with an echo.

Inside a function (in the same php file), I declare :
global $myvariable ;
However, $myvariable has lost it's value.

Is there a php setting I need to change to get this to work?
Any other suggestions?
TIA

Jul 17 '05 #1
Share this Question
Share on Google+
7 Replies


P: n/a
On 14 May 2005 08:50:03 -0700, "Japhy" <ja************@yahoo.com> wrote:
Hello, I'm a newbie using PHP. Having some trouble using a variable
within a function.

I use some mysql code to assign a value to $myvariable.
I verify that it is getting the value with an echo.

Inside a function (in the same php file), I declare :
global $myvariable ;
However, $myvariable has lost it's value.

Is there a php setting I need to change to get this to work?


No, there aren't any that affect normal global variables.

Post a short example demonstrating your problem. Cut it down as far as you
can, so it's still runnable but shows the issue. (Often this process helps you
find the problem yourself).

Are you doing something like:

<?php
$myvariable = 'x';
echo $myvariable;

function f()
{
global $myvariable;
echo $myvariable;
}
?>

Does this not give the expected result on your system?

--
Andy Hassall / <an**@andyh.co.uk> / <http://www.andyh.co.uk>
<http://www.andyhsoftware.co.uk/space> Space: disk usage analysis tool
Jul 17 '05 #2

P: n/a
I noticed that Message-ID: <hf********************************@4ax.com>
from Andy Hassall contained the following:
<?php
$myvariable = 'x';
echo $myvariable;

function f()
{
global $myvariable;
echo $myvariable;
}
?>


and of course you'll have to call the function.

--
Geoff Berrow (put thecat out to email)
It's only Usenet, no one dies.
My opinions, not the committee's, mine.
Simple RFDs http://www.ckdog.co.uk/rfdmaker/
Jul 17 '05 #3

P: n/a
On Sat, 14 May 2005 17:48:29 +0100, Geoff Berrow <bl******@ckdog.co.uk> wrote:
I noticed that Message-ID: <hf********************************@4ax.com>
from Andy Hassall contained the following:
<?php
$myvariable = 'x';
echo $myvariable;

function f()
{
global $myvariable;
echo $myvariable;
}
?>


and of course you'll have to call the function.


Hm, yes, that's a good idea ;-)

--
Andy Hassall / <an**@andyh.co.uk> / <http://www.andyh.co.uk>
<http://www.andyhsoftware.co.uk/space> Space: disk usage analysis tool
Jul 17 '05 #4

P: n/a
Yes, very similar to your example.

<?PHP
session_start();
$result = mysql_query("SELECT SUM(woh_con_pric) as cp, SUM(woh_billed)
as bl, SUM(woh_cost) as co,
SUM(woh_cost_com) as cc from wohdata WHERE CONT_NUM = $my_contnum AND
WOH_ASOFDATE = $my_wohdate") ;

$my_cp_total = mysql_result($result, 0, cp);
$my_btd_total = mysql_result($result, 0, bl);
$my_ctd_total = mysql_result($result, 0, co);
$my_ctc_total = mysql_result($result, 0, cc);
mysql_free_result($result);
echo "$my_cp_total $my_btd_total $my_ctd_total $my_ctc_total ";
$oRSWOHDATA->Close();
unset($oRSWOHDATA);

Echos the correct figures fine.

Here is the function:
function buildColumnLabels() {
global $my_cp_total;
echo "$my_cp_total is the total";
}

When I pull up the .php file, display is
is the total (number is not displayed)

When I whittle it down to the basic code, it works OK. I am using some
templates to build this app, with some simple hand coding. The
templates generate alot of messy code that I'll have to pick through I
guess. I was hoping it was a 'quick fix'.
Thanks for the suggesions.
J

Andy Hassall wrote:
On 14 May 2005 08:50:03 -0700, "Japhy" <ja************@yahoo.com> wrote:
Hello, I'm a newbie using PHP. Having some trouble using a variable
within a function.

I use some mysql code to assign a value to $myvariable.
I verify that it is getting the value with an echo.

Inside a function (in the same php file), I declare :
global $myvariable ;
However, $myvariable has lost it's value.

Is there a php setting I need to change to get this to work?
No, there aren't any that affect normal global variables.

Post a short example demonstrating your problem. Cut it down as far

as you can, so it's still runnable but shows the issue. (Often this process helps you find the problem yourself).

Are you doing something like:

<?php
$myvariable = 'x';
echo $myvariable;

function f()
{
global $myvariable;
echo $myvariable;
}
?>

Does this not give the expected result on your system?

--
Andy Hassall / <an**@andyh.co.uk> / <http://www.andyh.co.uk>
<http://www.andyhsoftware.co.uk/space> Space: disk usage analysis

tool

Jul 17 '05 #5

P: n/a
Japhy wrote:
Yes, very similar to your example.

<?PHP
session_start();
$result = mysql_query("SELECT SUM(woh_con_pric) as cp, SUM(woh_billed)
as bl, SUM(woh_cost) as co,
SUM(woh_cost_com) as cc from wohdata WHERE CONT_NUM = $my_contnum AND
WOH_ASOFDATE = $my_wohdate") ;

$my_cp_total = mysql_result($result, 0, cp);
$my_btd_total = mysql_result($result, 0, bl);
$my_ctd_total = mysql_result($result, 0, co);
$my_ctc_total = mysql_result($result, 0, cc);
mysql_free_result($result);
echo "$my_cp_total $my_btd_total $my_ctd_total $my_ctc_total ";
$oRSWOHDATA->Close();
unset($oRSWOHDATA);

Echos the correct figures fine.

Here is the function:
function buildColumnLabels() {
global $my_cp_total;
echo "$my_cp_total is the total";
}

When I pull up the .php file, display is
is the total (number is not displayed)

When I whittle it down to the basic code, it works OK. I am using some
templates to build this app, with some simple hand coding. The
templates generate alot of messy code that I'll have to pick through I
guess. I was hoping it was a 'quick fix'.
Thanks for the suggesions.
J

Where are you calling the function? I don't see it in your example.

Also - please don't top-post. The standard in this newsgroup is
bottom-posting.

--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attglobal.net
==================
Jul 17 '05 #6

P: n/a
Thanks to all who posted....user error....as I mentioned, I am using
some templates. They
offer embed points to insert code. I changed the point at which I was
embedding mysql code
and it works as expected. Jerry, what do you mean by top-posting?

Jul 17 '05 #7

P: n/a
Japhy wrote:
Thanks to all who posted....user error....as I mentioned, I am using
some templates. They
offer embed points to insert code. I changed the point at which I was
embedding mysql code
and it works as expected. Jerry, what do you mean by top-posting?


Because it doesn't follow the normal order of reading.

Why shouldn't you top post?

Putting the response before the question.

What is top posting?
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attglobal.net
==================
Jul 17 '05 #8

This discussion thread is closed

Replies have been disabled for this discussion.