#22575 [Fbk->Opn]: Arguments passed to function changes!

2003-03-12 Thread public at hverdag dot dk
 ID:   22575
 User updated by:  public at hverdag dot dk
 Reported By:  public at hverdag dot dk
-Status:   Feedback
+Status:   Open
 Bug Type: Session related
 Operating System: Windows 2000
 PHP Version:  4.3.1
 New Comment:

That's a problem since it's a quite complex page divided into sections
where you have to enter and submit 3-4 times before you come to the
section where the error occurs.

And when I just take those function calls out and put in a seperate
page the problem never occurs!

I call the function several times like this:

$enterSQL .= field_to_sql('category', 'autovalue');

Then on the very first line within the function I echo the two values
out to the browser and suddenly the first argument has the value
'autovalue' instead of 'category'! 

Couldn't that seem like a memory problem since it doesn't remember the
values correctly? I don't understand how it can be session related -
espacially when the values passed to the function are static - not
variables!


Previous Comments:


[2003-03-09 17:49:32] [EMAIL PROTECTED]

Please provide a full script (short!) that clearly demonstrates the
problem and can be simply cut'n'pasted from this report.




[2003-03-09 16:28:52] public at hverdag dot dk

Enabling all error/warnings/notices only gives some undefined variables
and indexes, and it's the same notices whether the page executes
correct or not. So I cannot see any problem there.

Talking about a session problem, how would that be?



[2003-03-06 22:05:02] [EMAIL PROTECTED]

It's most likely caused by sessions.
Try adding 'error_reporting(E_ALL);' as first line
in the script and see what errors you get.




[2003-03-06 14:48:15] public at hverdag dot dk

I have one function (see it below) where I pass 2 arguments. But
sometimes (yes, only sometimes!) when inside the function myfield has
the same value as myvalue instead of it's own value. In other words, it
simply changes the values of the arguments!

I have a long script where I at one point have a line like this several
times to build up my SQL statement, calling this function:

  $enterSQL .= field_to_sql('category', 'autovalue');

But when I check the value of these two arguments inside the function
both arguments have the value 'autovalue'!

This happens inside my long script and it can happen usually two times
(meaning: after a page reload) but the third time (second reload) the
problem is gone and script executes as expected! And if I try to call
this function from another simple page the problem never occurs.

I'm using sessions but I cannot see how that should affect any of this
(meaning, page reload should not affect anything).

Here is the function (which is located in an included file in the above
mentioned script):

  function field_to_sql($myfield, $myvalue) {
echo "+". $myfield . "+". $myvalue ."+";
#this outputs wrong value for the myfield variable!
if ($myvalue == 'autovalue') {
$myvalue_var_name = 'value_' . $myfield;
global $$myvalue_var_name;
if (!isset($$myvalue_var_name)) {   echo 'Warning, 
variable is not
set';
}
$myvalue = $$myvalue_var_name;
}
$myvalue = str_replace("'", "\'", $myvalue);
if ($myvalue == '') {
return "`$myfield` = null, ";
} else {
return "`$myfield` = '$myvalue', ";
}
  }





-- 
Edit this bug report at http://bugs.php.net/?id=22575&edit=1



#22575 [Fbk->Opn]: Arguments passed to function changes!

2003-03-09 Thread public at hverdag dot dk
 ID:   22575
 User updated by:  public at hverdag dot dk
 Reported By:  public at hverdag dot dk
-Status:   Feedback
+Status:   Open
-Bug Type: Session related
+Bug Type: Variables related
 Operating System: Windows 2000
 PHP Version:  4.3.1
 New Comment:

Enabling all error/warnings/notices only gives some undefined variables
and indexes, and it's the same notices whether the page executes
correct or not. So I cannot see any problem there.

Talking about a session problem, how would that be?


Previous Comments:


[2003-03-06 22:05:02] [EMAIL PROTECTED]

It's most likely caused by sessions.
Try adding 'error_reporting(E_ALL);' as first line
in the script and see what errors you get.




[2003-03-06 14:48:15] public at hverdag dot dk

I have one function (see it below) where I pass 2 arguments. But
sometimes (yes, only sometimes!) when inside the function myfield has
the same value as myvalue instead of it's own value. In other words, it
simply changes the values of the arguments!

I have a long script where I at one point have a line like this several
times to build up my SQL statement, calling this function:

  $enterSQL .= field_to_sql('category', 'autovalue');

But when I check the value of these two arguments inside the function
both arguments have the value 'autovalue'!

This happens inside my long script and it can happen usually two times
(meaning: after a page reload) but the third time (second reload) the
problem is gone and script executes as expected! And if I try to call
this function from another simple page the problem never occurs.

I'm using sessions but I cannot see how that should affect any of this
(meaning, page reload should not affect anything).

Here is the function (which is located in an included file in the above
mentioned script):

  function field_to_sql($myfield, $myvalue) {
echo "+". $myfield . "+". $myvalue ."+";
#this outputs wrong value for the myfield variable!
if ($myvalue == 'autovalue') {
$myvalue_var_name = 'value_' . $myfield;
global $$myvalue_var_name;
if (!isset($$myvalue_var_name)) {   echo 'Warning, 
variable is not
set';
}
$myvalue = $$myvalue_var_name;
}
$myvalue = str_replace("'", "\'", $myvalue);
if ($myvalue == '') {
return "`$myfield` = null, ";
} else {
return "`$myfield` = '$myvalue', ";
}
  }





-- 
Edit this bug report at http://bugs.php.net/?id=22575&edit=1