关于PHP程序, 希望高手帮忙
登录 | 论坛导航 -> 华新鲜事 -> 社会百科 | 本帖共有 3 楼,分 1 页, 当前显示第 1 页 : 本帖树形列表 : 刷新 : 返回上一页
<<始页  [1]  末页>>
作者:关注 (等级:4 - 马马虎虎,发帖:796) 发表:2003-12-18 01:24:05  楼主  关注此帖
关于PHP程序, 希望高手帮忙
我达到在选中表单中输入数字然后确认后被Session记录或更新, 但我发现即便我没有点击另外一个表单的确认键, 其数据也同时增加.

不如, 我在表单1中输入3, 点击后两个session variable 会接受同样的值, 并显示同样结果.

请教问题的原因, 及如何解决?谢谢先;

程序如下:

<?php
session_start();
if( !session_is_registered("count1")){
session_register("count1");
$_SESSION[$count1]=0; }
if( !session_is_registered("count2")){
session_register("count2");
$_SESSION[$count2]=0; }

if(isset($_POST["ba"])){
echo "Button one is clicked!<br>";
$Q1 = $_POST['num1'];
$_SESSION[$count1]+=$Q1;
}
elseif(isset($_POST["bb"])){
echo "Button two is clicked!<br>";
$Q2 = $_POST['num2'];
$_SESSION[$count2]+=$Q2;
}
echo "Number1 is: $_SESSION[$count1]<br>
Number2 is:$_SESSION[$count2]<br><br>";

?>


number1:
<form method="post" action="cou.php">
<strong><font size="2">Number1:</font></strong>

<input type="text" name="num1" size="1" value="1">
<input type="submit" name="ba" value="add to one" >
</form>


number2:
<form method="post" action="cou.php">
<strong><font size="2">Number2:</font></strong>

<input type="text" name="num2" size="1" value="1">
<input type="submit" name="bb" value="add to two" >
</form>

欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:大雨倾城 (等级:2 - 初出茅庐,发帖:220) 发表:2003-12-18 18:35:20  2楼 评分:
正确的办法如下
先给你source

<?php
session_start();

if(isset($_POST["ba"])){
echo "Button one is clicked!<br>";
$Q1 = $_REQUEST['num1'];
echo "q1 = $Q1 <br>";
$_SESSION["count1"]+=$Q1;
}
elseif(isset($_POST["bb"])){
echo "Button two is clicked!<br>";
$Q2 = $_REQUEST['num2'];
echo "q2 = $Q2 <br>";
$_SESSION["count2"]+=$Q2;
}
echo "Number1 is:".$_SESSION["count1"]."<br>
Number2 is:".$_SESSION["count2"]."<br><br>";

?>

你程序出错的原因是如果你使用$_SESSION[$count1]和$_SESSION[$count2]在echo的时候两个变量被磨认为同一常量,所以其实你所打出来的结果只是其中的一个变量。
另外session_register和$_SESSION不要一起使用,现在的倾向是使用$_SESSION
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
作者:关注 (等级:4 - 马马虎虎,发帖:796) 发表:2003-12-18 19:54:45  3楼
正确的办法如下先给你source 你程序出错的原因是如果你使用$_SESSION[$count1]和$_SESSION[$count2]在echo的时候两个变量被磨认为同一常量,所以其实你所打出来的结果只是其中的一个变量。 另外session_register和$_SESSION不要一起使用,现在的倾向是使用$_SESSION (more...)
谢谢! 请版主上花!
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版只看此人从这里展开收起列表
论坛导航 -> 华新鲜事 -> 社会百科 | 返回上一页 | 本主题共有 3 篇文章,分 1 页, 当前显示第 1 页 | 回到顶部
<<始页  [1]  末页>>

请登录后回复:帐号   密码