[PHP-users 11337] セッションについて

Shigeru Matsumoto php-users@php.gr.jp
Thu, 7 Nov 2002 12:54:00 +0900


matsuと申します。

redhat7.2, php-4.2.1

以下のスクリプトで、
------- hoge.php---------
$timeoffset = time() + 20;
while(time() < $timeoffset)
{
   if($_SESSION["hoge"] == "1")
      break;
}

------- hoge.html----
<html>
<head><title></title>
<meta http-equiv="Content-Type" content="text/html;CHARSET=EUC-JP">
<script language="JavaScript">
<!--
   function Exec() {
            window.open("cancel.html", "cancel", 'location=no, toolbar=no,
menubar=no, status=no, directories=no, scrollbars=no, resizable=no,
width=400, height=300');
             setTimeout("document.a.submit()", 1000);
   }
//-->
</script>
</head>
<body>
<form name="a" action="hoge.php" method="post">
<table>
<tr>
<td>
<input type="button" value="実行" onClick="Exec()">
</td>
</tr>
</table>
</form>
</body>
</html>

------- cancel.html----
<html>
<head>
<title></title>
<meta http-equiv=content-type content="text/html; charset=x-euc-jp">
<script language="JavaScript">
<!--
   function submitCancel()
   {
      document.a.click.value = "1";
      document.a.submit();
   }
//-->
</script>
</head>
<body>
<form name="a" action="cancel.php" method="post">
<table>
<tr>
<td align="center" width="300" height="200">
<input type="button" value="中止" onClick="submitCancel()">
</td>
</tr>
</table>
<input type="hidden" name="click" value="">
</form>
</body>
</html>

------- cancel.php----
<?php
$_SESSION["hoge"] = "1";

"cancel.html"を読み込み、
$template に代入。

print($template);
?>

------- main.php----
<?php
"hoge.html"を読み込み、
$template に代入。

print($template);

session_start();
if(!isset($hoge))
   $hoge = "";
session_register("hoge");
?>

hoge.phpが動作している間、cancel.phpは実行されません。
hoge.phpの動作を中断させる方法を教えて頂けないでしょうか?

よろしくお願いします。