A question about variable

Reply

Join Date: Jul 2007
Posts: 47
Reputation: Arctic wolf is an unknown quantity at this point 
Solved Threads: 1
Arctic wolf Arctic wolf is offline Offline
Light Poster

A question about variable

 
0
  #1
Jun 17th, 2009
Hello,
as you all already know from my previous question I'm new in PHP(by the way,thanks again for the previous help),
I am trying to build a simple "walking" program,so I'll have "forwards",
"backeards","right" and "left" buttons and when I click on one of them the picture on the page will change.
I started with a simple variable expirement,I have one button on the page and when I click it I expect the variable to grow by 1(in the future that var will show a place inside an array),but from some reason the code doesn't work,here is the code:
  1. <html>
  2. <body>
  3. <?php
  4. $array[3];
  5. $i=0;?>
  6. <BUTTON type="pushbutton" onClick="<?php $i++?>" ><img alt="Forwards"/ > </BUTTON>
  7. <?php
  8. echo"<br/>".$i ; ?>
  9. </body>
  10. </html>
The described array will be used later.
The problem with the code is that the printed variable value is always 1,
it doesn't equals 0 like it should before I push the button and it doesn't turn to 2 after I push the button.
Can please anyone tell me how to fix it.
And also,I have some C/C++ programing expirience,so maybe it gives me trouble when I try to program on php,any php profi advice about my project would be great.

Thank you,
A.
Reply With Quote Quick reply to this message  
Join Date: Nov 2008
Posts: 4
Reputation: mathman54 is an unknown quantity at this point 
Solved Threads: 0
mathman54's Avatar
mathman54 mathman54 is offline Offline
Newbie Poster

Re: A question about variable

 
0
  #2
Jun 17th, 2009
try something like this:
I don't think I have this down yet but this will give you some direction
$i = 0;
$j = 0;
$k = 0;
$l = 0;
Though it is not necessary to initialize the variables, but I don't think it hurts anything.

switch ($submit) {
case left
$i = ++$i;
echo $i;
break;
case (right)
$j = ++$j:
echo $j;
break;
case (forward)
$k = ++$k;
echo $k;
break;
case (backward)
$l = ++$l
echo $l;
break;
}

Then when you make buttons your submits have the left, right , forward, and backwards assigned to them.
I hope this puts you in the right direction.
When it says free and it why is it so time consuming?
Reply With Quote Quick reply to this message  
Join Date: Apr 2005
Posts: 1,402
Reputation: ShawnCplus is a glorious beacon of light ShawnCplus is a glorious beacon of light ShawnCplus is a glorious beacon of light ShawnCplus is a glorious beacon of light ShawnCplus is a glorious beacon of light 
Solved Threads: 225
Sponsor
ShawnCplus's Avatar
ShawnCplus ShawnCplus is offline Offline
Code Monkey

Re: A question about variable

 
0
  #3
Jun 17th, 2009
PHP does not work like C/C++. When a page refreshes its previous state is gone, it has no knowledge of what happened before. You must save variables if you want to carry them across pageloads with either a database, sessions, cookies or files.
GCS d- s+ a-->? C++(++++) UL+++ P+>+++ L+++ E--- W+++
N+ o K w++(---) O? !M- V PS+>++ PE+ Y+ PGP !t- 5? X- R tv+
b+>++ DI+ D G++>+++ e+ h+>++ r y+
PMs asking for help will not be answered, post on the forums. That's what they're there for.
Reply With Quote Quick reply to this message  
Join Date: Nov 2007
Posts: 596
Reputation: buddylee17 has a spectacular aura about buddylee17 has a spectacular aura about 
Solved Threads: 125
buddylee17's Avatar
buddylee17 buddylee17 is offline Offline
Posting Pro

Re: A question about variable

 
0
  #4
Jun 17th, 2009
You need JavaScript (unless you're comfortable with the page reloading on each change).
Lost time is never found again.
- Benjamin Franklin
Reply With Quote Quick reply to this message  
Join Date: Jul 2007
Posts: 47
Reputation: Arctic wolf is an unknown quantity at this point 
Solved Threads: 1
Arctic wolf Arctic wolf is offline Offline
Light Poster

Re: A question about variable

 
0
  #5
Jun 17th, 2009
Mathman,I'll check it but I dont think it will help if the language doesn't remember variables values...
ShawnCplus,
I tried to save the variable into a file,but it didn't help,
I still have the same problem,here is the code:
  1. <html>
  2. <body>
  3. <?php
  4. function add ()
  5. {
  6. $fp=fopen("position.dat","r");
  7. $i=fgetc($fp);
  8. fclose($fp);
  9. $i++;
  10. $fp=fopen("position.dat","w");
  11. fwrite($fp,$i);
  12. fclose($fp);
  13. }
  14. $array[3];
  15. $i=0;
  16. $fp=fopen("position.dat","w");
  17. fwrite($fp,$i);
  18. fclose($fp);
  19.  
  20.  
  21. ?>
  22. <BUTTON type="submit" onClick="<?php add()?>" "><img alt="Forwards"/ > </BUTTON>
  23. <?php
  24. $fp=fopen("position.dat","r");
  25. echo "<br/>".fgetc($fp) ;
  26. fclose($fp);
  27. ?>
  28. </body>
  29. </html>
  30.  

BuddyLee17,
at the moment I'm trying to handle php,not JavaScript.
Last edited by Arctic wolf; Jun 17th, 2009 at 9:54 pm.
Reply With Quote Quick reply to this message  
Join Date: Jul 2007
Posts: 47
Reputation: Arctic wolf is an unknown quantity at this point 
Solved Threads: 1
Arctic wolf Arctic wolf is offline Offline
Light Poster

Re: A question about variable

 
0
  #6
Jun 18th, 2009
Hi everyone,
I changed the code to the following:
  1. <html>
  2. <body>
  3. <?php
  4. function add ()
  5. {
  6. $fp=fopen("position.dat","r");
  7. $i=fgetc($fp);
  8. fclose($fp);
  9. $i++;
  10. $fp=fopen("position.dat","w");
  11. fwrite($fp,$i);
  12. fclose($fp);
  13. }
  14. $array[3];
  15. ?>
  16. <INPUT TYPE="BUTTON" onClick="<?php add();?>" ><img alt="Forwards"/ > </INPUT>
  17. <?php
  18. $fp=fopen("position.dat","r");
  19. echo "<br/>".fgetc($fp) ;
  20. fclose($fp);
  21. ?>
  22. </body>
  23. </html>

And now something weird happens,
the printed variables value increases every time the page reloads
WITHOUT me clicking on the button!
And when I do click on the button the code ignores it(the variables value doesn't change).
Why does it happen?

A.
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC