[PHP-users 1054] Re: 変数の引継

SUMi php-users@php.gr.jp
Fri, 03 Aug 2001 11:15:45 +0900


SUMiです。

> 変数の引継についてお伺いしたいのですが、
> 以下の2つのファイルがあります。
> 
> ----a.php----
> <form action=a.php>
> <input type=text name=a>01<br>
> <input type=text name=b>02<br>
> <INPUT type="submit" value="送信する">
> <INPUT type="reset" value="リセット">
> </form>
> <?php
> function cul($a,$b) {
>     global $c;
>     $c=$a+$b;
>     print("c=$c <br> \n");
>     if($a != "") {
>         print("<a href=b.php>Next</a> <br> \n");
>     }
> }
> cul($a,$b);
> ?>

ずばりそのものになってしまいますが…
>         print("<a href=b.php>Next</a> <br> \n");
を
         print("<a href=b.php?c=".$c.">Next</a> <br> \n");
でいいのでは?

> ----b.php----
> <?php
> global $c;
> function cl($c) {
>     $d=$c+10;
>     print(" c=$c <br> d=$d <br> \n");
> }
> cl($c);
> print("<a href=a.php>Back</a> \n");
> ?>
> 
> b.phpの方で、a.phpが出した、$cを引き継ぎたいのですが、
> 上のように、関数で明示しても、global関数にしても、共に
> 引き継げません。
> 上記関数(cul , cl)を一つのファイルにまとめれば引き継げるのですが、
> ファイルを分けると・・・・
> どうやって引き継げばいいのでしょうか?

関数をひとつのファイルにまとめたところで、別々のセッションの値は引き継げ
ないと思います。
# cul と cl を同じセッション内で使用するなら別ですが