RE: [PHP] Simple: Whats wrong with this?
On 17 March 2004 17:09, Chris W. Parker wrote: $var++ is a post incrementer meaning the value is updated at the next command*. * i'm not exactly sure how the compiler determines when to post increment, but i think i'm correct. Not quite -- the increment is performed immediately after the access -- in fact, as part of the same operation. So: $x = 3; $y = ($x++ * 2) + $x; is likely to give you $y==10, not 9. (I say is likely to, because you don't have any absolute cast-iron guarantees that a compiler won't, if it thinks it has good reason, commute the above to $x + ($x++ * 2), which would give you $y==9! In general, it's best to regard the value of a pre- or post-incremented variable as uncertain in the rest of the expression containing it.) Cheers! Mike - Mike Ford, Electronic Information Services Adviser, Learning Support Services, Learning Information Services, JG125, James Graham Building, Leeds Metropolitan University, Beckett Park, LEEDS, LS6 3QS, United Kingdom Email: [EMAIL PROTECTED] Tel: +44 113 283 2600 extn 4730 Fax: +44 113 283 3211 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Simple: Whats wrong with this?
Ford, Mike LSS on Thursday, March 18, 2004 5:02 AM said: Not quite -- the increment is performed immediately after the access -- in fact, as part of the same operation. So: $x = 3; $y = ($x++ * 2) + $x; is likely to give you $y==10, not 9. i see. good example. chris. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP] Simple: Whats wrong with this?
I have a form variable I want to increment by a value of 1 each time the page loads. Here's what I have so far: if(!isset($correct)) { $correct = 0; } else { $correct = $correct++; } Seems like it should work? Thanks! Shane -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Simple: Whats wrong with this?
No. $correct++; Is all you need for the second condition, it automatically sets itself back. On Wed, 2004-03-17 at 11:52, Shane McBride wrote: I have a form variable I want to increment by a value of 1 each time the page loads. Here's what I have so far: if(!isset($correct)) { $correct = 0; } else { $correct = $correct++; } Seems like it should work? Thanks! Shane -- Adam Voigt [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Simple: Whats wrong with this?
No. $correct++; Is all you need for the second condition, it automatically sets itself back. Does this always work? In my timesheet app, I have to do $counter = $counter + 1, because for some reason the $counter++; doesn't work. It just doesn't work, no incrementation of the variable. Is there something in php.ini that can prohibit this from working? Thanks, Jake -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Simple: Whats wrong with this?
It doesn't seem to work either way for me. Shane -Original Message- From: Jake McHenry [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 17, 2004 12:01 PM To: [EMAIL PROTECTED] Subject: Re: [PHP] Simple: Whats wrong with this? No. $correct++; Is all you need for the second condition, it automatically sets itself back. Does this always work? In my timesheet app, I have to do $counter = $counter + 1, because for some reason the $counter++; doesn't work. It just doesn't work, no incrementation of the variable. Is there something in php.ini that can prohibit this from working? Thanks, Jake -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Simple: Whats wrong with this?
Not that I'm aware of. In every incantation I've ever seen of the incrementing, $correct++; Is always, 100% equal to: $correct = ($correct + 1); But, maybe you ran into a case where it's not, you never know. On Wed, 2004-03-17 at 12:00, Jake McHenry wrote: No. $correct++; Is all you need for the second condition, it automatically sets itself back. Does this always work? In my timesheet app, I have to do $counter = $counter + 1, because for some reason the $counter++; doesn't work. It just doesn't work, no incrementation of the variable. Is there something in php.ini that can prohibit this from working? Thanks, Jake -- Adam Voigt [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Simple: Whats wrong with this?
This drove me nuts for a while and instead of doing $variable++ I started using ++$variable and never had the problem again. --Sam Jake McHenry wrote: No. $correct++; Is all you need for the second condition, it automatically sets itself back. Does this always work? In my timesheet app, I have to do $counter = $counter + 1, because for some reason the $counter++; doesn't work. It just + doesn't work, no incrementation of the variable. Is there something in php.ini that can prohibit this from working? Thanks, Jake -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Simple: Whats wrong with this?
Well I accidentally deleted your original email, but I didn't see where you were getting the counter variable from. Where is the variable being stored? You do know that setting $counter++ for one visitor, doesn't translate the value of $counter to another, right? On Wed, 2004-03-17 at 12:05, Shane McBride wrote: It doesn't seem to work either way for me. Shane -Original Message- From: Jake McHenry [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 17, 2004 12:01 PM To: [EMAIL PROTECTED] Subject: Re: [PHP] Simple: Whats wrong with this? No. $correct++; Is all you need for the second condition, it automatically sets itself back. Does this always work? In my timesheet app, I have to do $counter = $counter + 1, because for some reason the $counter++; doesn't work. It just doesn't work, no incrementation of the variable. Is there something in php.ini that can prohibit this from working? Thanks, Jake -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- Adam Voigt [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re[2]: [PHP] Simple: Whats wrong with this?
Hello Jake, Wednesday, March 17, 2004, 5:00:52 PM, you wrote: $correct++; JM Does this always work? In my timesheet app, I have to do $counter = $counter JM + 1, because for some reason the $counter++; doesn't work. It just doesn't JM work, no incrementation of the variable. Is there something in php.ini that JM can prohibit this from working? ++ is a _post_ increment. This means it'll returns $correct first and then increment it by one. There is a section in the PHP manual on this (search for Incrementing/Decrementing Operators. -- Best regards, Richard Davey http://www.phpcommunity.org/wiki/296.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Simple: Whats wrong with this?
Maybe you guys should take a read about pre- and post-increment :-) Sam Masiello wrote: This drove me nuts for a while and instead of doing $variable++ I started using ++$variable and never had the problem again. --Sam Jake McHenry wrote: No. $correct++; Is all you need for the second condition, it automatically sets itself back. Does this always work? In my timesheet app, I have to do $counter = $counter + 1, because for some reason the $counter++; doesn't work. It just + doesn't work, no incrementation of the variable. Is there something in php.ini that can prohibit this from working? Thanks, Jake -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Simple: Whats wrong with this?
Jake McHenry mailto:[EMAIL PROTECTED] on Wednesday, March 17, 2004 9:01 AM said: Does this always work? In my timesheet app, I have to do $counter = $counter + 1, because for some reason the $counter++; doesn't work. It just doesn't work, no incrementation of the variable. Is there something in php.ini that can prohibit this from working? $var++ is a post incrementer meaning the value is updated at the next command*. ++$var is a pre increment meaning the value is updated immediately. is it possible you are expecting the results of ++$var? try this and see what happens: ?php $var = 2; echo $var++ . br; echo ++$var . br; ? also, i don't know of anything in the php.ini that would turn this short hand off. seems unlikely that there is. chris. * i'm not exactly sure how the compiler determines when to post increment, but i think i'm correct. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re[2]: [PHP] Simple: Whats wrong with this?
Hello Sam, Wednesday, March 17, 2004, 5:04:21 PM, you wrote: SM This drove me nuts for a while and instead of doing $variable++ I SM started using ++$variable and never had the problem again. Yes, that's a pre-increment operator. Quite different to a post-increment. You need to use the right one depending if your variable exists already, etc. -- Best regards, Richard Davey http://www.phpcommunity.org/wiki/296.html -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Simple: Whats wrong with this?
I am just trying to get the variable to increment, than I will be working on a session. It's basically being used to keep track of correct/incorrect answers for an online quiz. Here's what I am trying: if(!isset($correct)) { $correct = 0; } else { $correct++ } Shane -Original Message- From: Adam Voigt [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 17, 2004 12:06 PM To: Shane McBride Cc: PHP Subject: RE: [PHP] Simple: Whats wrong with this? Well I accidentally deleted your original email, but I didn't see where you were getting the counter variable from. Where is the variable being stored? You do know that setting $counter++ for one visitor, doesn't translate the value of $counter to another, right? On Wed, 2004-03-17 at 12:05, Shane McBride wrote: It doesn't seem to work either way for me. Shane -Original Message- From: Jake McHenry [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 17, 2004 12:01 PM To: [EMAIL PROTECTED] Subject: Re: [PHP] Simple: Whats wrong with this? No. $correct++; Is all you need for the second condition, it automatically sets itself back. Does this always work? In my timesheet app, I have to do $counter = $counter + 1, because for some reason the $counter++; doesn't work. It just doesn't work, no incrementation of the variable. Is there something in php.ini that can prohibit this from working? Thanks, Jake -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- Adam Voigt [EMAIL PROTECTED] -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: Re[2]: [PHP] Simple: Whats wrong with this?
On Thursday 18 March 2004 01:07, Richard Davey wrote: ++ is a _post_ increment. This means it'll returns $correct first and then increment it by one. There is a section in the PHP manual on this (search for Incrementing/Decrementing Operators. Whether it's pre or post depends on whether it is placed before the variable in question or after. $doo++ !== ++$doo -- Jason Wong - Gremlins Associates - www.gremlins.biz Open Source Software Systems Integrators * Web Design Hosting * Internet Intranet Applications Development * -- Search the list archives before you post http://marc.theaimsgroup.com/?l=php-general -- /* Marxist Law of Distribution of Wealth: Shortages will be divided equally among the peasants. */ -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Simple: Whats wrong with this?
Shane McBride mailto:[EMAIL PROTECTED] on Wednesday, March 17, 2004 9:16 AM said: I am just trying to get the variable to increment, than I will be working on a session. It's basically being used to keep track of correct/incorrect answers for an online quiz. and so now that you've corrected your code what are the results you are getting? are they not what you expect/want? chris. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: Re[2]: [PHP] Simple: Whats wrong with this?
On Wed, 2004-03-17 at 12:19, Jason Wong wrote: On Thursday 18 March 2004 01:07, Richard Davey wrote: ++ is a _post_ increment. This means it'll returns $correct first and then increment it by one. There is a section in the PHP manual on this (search for Incrementing/Decrementing Operators. Whether it's pre or post depends on whether it is placed before the variable in question or after. $doo++ !== ++$doo But ++$doo === $doo++ *heheh* Rob. -- .. | InterJinn Application Framework - http://www.interjinn.com | :: | An application and templating framework for PHP. Boasting | | a powerful, scalable system for accessing system services | | such as forms, properties, sessions, and caches. InterJinn | | also provides an extremely flexible architecture for | | creating re-usable components quickly and easily. | `' -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Simple: Whats wrong with this?
No, the value still is not incrementing. -Original Message- From: Chris W. Parker [mailto:[EMAIL PROTECTED] Sent: Wednesday, March 17, 2004 12:25 PM To: Shane McBride; PHP; [EMAIL PROTECTED] Subject: RE: [PHP] Simple: Whats wrong with this? Shane McBride mailto:[EMAIL PROTECTED] on Wednesday, March 17, 2004 9:16 AM said: I am just trying to get the variable to increment, than I will be working on a session. It's basically being used to keep track of correct/incorrect answers for an online quiz. and so now that you've corrected your code what are the results you are getting? are they not what you expect/want? chris. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
RE: [PHP] Simple: Whats wrong with this?
Shane McBride mailto:[EMAIL PROTECTED] on Wednesday, March 17, 2004 9:40 AM said: No, the value still is not incrementing. then you must be resetting it unknowingly or the else block in your if..else statement is not being executed like you are expecting it to be. one thing i do to debug this kind of thing is to add some echo statements to the different code blocks to see what's happening. for example: if($expression) { echo here i am!; blow_up_world(); } else { echo y hello thar!; eat_cheese(); } then when i execute the page i know what i am expecting and i can compare that to what i am *actually* getting. for example, if i am expecting to see here i am! but instead i see y hello thar! i can know that something is going wrong with my expression. hth, chris. -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] Simple: Whats wrong with this?
I didn't post it, I just added on to someone elses question. I do use counter++; in other scripts, but it's only in my timesheet app that it doesn't work. It's very odd, so I just made them all $counter = $counter + 1; I didn't have time to mess with it. Was just asking. $counter is initially set to 0, then after a mysql_query(), in the while loop for mysql_fetch_array I was trying $counter++; like I do in my other scripts. But in this case, it didn't work. I just wanted to see if anyone knew why. I'll try the pre increment. Maybe that'll work. It wasn't a big deal, as long as it worked. Jake - Original Message - From: Adam Voigt [EMAIL PROTECTED] To: Shane McBride [EMAIL PROTECTED] Cc: PHP [EMAIL PROTECTED] Sent: Wednesday, March 17, 2004 12:05 PM Subject: RE: [PHP] Simple: Whats wrong with this? Well I accidentally deleted your original email, but I didn't see where you were getting the counter variable from. Where is the variable being stored? You do know that setting $counter++ for one visitor, doesn't translate the value of $counter to another, right? Does this always work? In my timesheet app, I have to do $counter = $counter + 1, because for some reason the $counter++; doesn't work. It just doesn't work, no incrementation of the variable. Is there something in php.ini that can prohibit this from working? Thanks, Jake -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php