Solved

passing variable to a second page

Posted on 2009-07-16
10
264 Views
Last Modified: 2012-05-07
Hi Experts
i have this in my script (page1.php)
$vat=21.5;
$taux=($amount*$vat)/100;
$taux is a variable
$amount is a result of sum from select clause
and i am using session
my problem i have page2.php second script that prints me a report but the $taux is passing as 0
then the calcul is false as the $taux is set to 0 and in my first page the calcul is perfect.
Regards
A.S
0
Comment
Question by:asaidi
  • 4
  • 3
  • 2
  • +1
10 Comments
 
LVL 6

Accepted Solution

by:
twocandles earned 300 total points
ID: 24868988
how do you pass the value to the second page?

do you use something like...

page1.php:

$_SESSION['myVar'] = $aux;

page2.php:

$aux = $_SESSION['myVar'];
0
 
LVL 14

Assisted Solution

by:profya
profya earned 200 total points
ID: 24869032
In $taux=($amount*$vat)/100;
if $amount is 0 then $taux is 0 too. Please check $amount variable first.
Then you can take the $taux in a session
session_start();
$_SESSION['taux']=$taux;
0
 

Author Comment

by:asaidi
ID: 24869114
Hi
sorry profya
no $taux is not set to zero i can see the total and it is right but when i send this taux to second page it is set to empty
0
 

Author Comment

by:asaidi
ID: 24869130
Hi twocandles

$_SESSION['myVar'] = $aux;
 and what is myvar set to ?
0
 
LVL 14

Expert Comment

by:profya
ID: 24869192
Ok.

Page1:
session_start();
$_SESSION['taux']=$taux;



Page2:
session_start();
$taux=$_SESSION['taux'];
echo $taux;
0
6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

 
LVL 14

Expert Comment

by:profya
ID: 24869204
Your variable will not return 0 unless it does not take the value saved in the session, there is some code assigns it to 0.
0
 
LVL 6

Assisted Solution

by:twocandles
twocandles earned 300 total points
ID: 24869332
$_SESSION['myVar'] = $taux;

 $_SESSION is a string based array, so 'myVar' is the index you use to store your value. You can call it whatever you want, for example

$_SESSION['calculatedValue'] = $aux;

as long as you use this very same index to retrieve the value from $_SESSION in another (or the same) page.
 
0
 
LVL 34

Expert Comment

by:gr8gonzo
ID: 24869412
twocandles' first question was probably the most important one and I don't see it answered yet. Before you guys get carried away with using sessions to carry currency amounts (ESPECIALLY on what sounds like a shopping cart), it would be better to find out how a user goes from page 1 to page 2.

Is there a form on page 1 that submits and sends the user to page 2? Can you, asaidi, show us the full code of the page where $taux is calculated and maybe the full code for page 2?

This sounds like a situation where a specific value should be carried from page 1 to page 2 via a form, and then have page 2 calculate the tax. A lot of shopping carts calculate tax when you're shopping for individual items, so if the tax variable is in a session, it could be calculated for an individual item on one page, and then the user makes a huge checkout on another page which uses the last-calculated tax, which could be WAY off. It's usually never a good idea to store checkout amounts (of any kind - tax, shipping, etc) in a session variable. There are just too many potential exceptions.
0
 

Author Comment

by:asaidi
ID: 24873137
Hi All

really i did all these examples thanks very much but still did not work for me
the taux in the first page is working fine but when i click to go to the second page it is not the calcul is wrong and the value of taux is empty
0
 
LVL 14

Expert Comment

by:profya
ID: 24885425
Hi,
To better trance where is the problem, I do use echo statements, I write an echo statement in a place I want to make sure that things are fine until this point. In your case, variables are sent between pages either by forms, or putting your variables in a session container. Unless you gave us the entire code I would be hard to figure out what's the exact problem.
In addition to all that, we will stay beside you until your problem is solved. :)
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Consider the following scenario: You are working on a website and make something great - something that lets the server work with information submitted by your users. This could be anything, from a simple guestbook to a e-Money solution. But what…
Password hashing is better than message digests or encryption, and you should be using it instead of message digests or encryption.  Find out why and how in this article, which supplements the original article on PHP Client Registration, Login, Logo…
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
The viewer will learn how to count occurrences of each item in an array.

758 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now