|
分類:[.NET 全般]
こんにちは、いつもお世話になっております。
現在PHPで空室状況の情報設定ページとお知らせページを作成しています。
情報設定ページは、一定の管理者のみが入れるページで、お知らせページは一般ユーザが見るだけのページになっています。
そこで下記2点で問題が発生し、躓いてしまって困っています。
1.情報設定ページで情報の更新した後、お知らせページを覗くと
空き部屋が情報更新されているのですが、他のメニュー(違うページ)に飛んだ後にお知らせ
ページに戻ってくると空き部屋が0室に戻ってしまうという状態になってしまいます。
2.お知らせページに記載されている現在の空き部屋のデータを、情報設定ページの場所でも
「現在の空き部屋データ」として表示させているのですが、全て「室」と表示されて「0室」
とも表示されずにいます。
ソースは、以下の通りです。
■お知らせページ(vacancy-info.php)
<?php
////vacancy-info.phpに表示されている空室の値を読み込む
//ファイルオープン
$pointer=fopen("data/room-info.txt", "r");
//データを取り出す
$data = fgets($pointer);
//スプリット
$room=split(",",$data);
//ファイルクローズ
fclose($pointer);
$_SESSION["room1"]=$room[0];
$_SESSION["room2"]=$room[1];
$_SESSION["room3"]=$room[2];
$_SESSION["room4"]=$room[3];
$_SESSION["room5"]=$room[4];
$_SESSION["room6"]=$room[5];
//初期値を受け取っていない場合
if($_POST['room1']==null && $_POST['room2']==null && $_POST['room3']==null && $_POST['room4']==null && $_POST['room5']==null && $_POST['room6']==null){
//セッションデータを保存する
$_SESSION["room1"]=0;
$_SESSION["room2"]=0;
$_SESSION["room3"]=0;
$_SESSION["room4"]=0;
$_SESSION["room5"]=0;
$_SESSION["room6"]=0;
}else{
//vacancy-infomaneger.phpで設定した空室の値を受け取る
$room1=$_POST['room1'];
$room2=$_POST['room2'];
$room3=$_POST['room3'];
$room4=$_POST['room4'];
$room5=$_POST['room5'];
$room6=$_POST['room6'];
//セッションデータを保存する
$_SESSION["room1"]=$room1;
$_SESSION["room2"]=$room2;
$_SESSION["room3"]=$room3;
$_SESSION["room4"]=$room4;
$_SESSION["room5"]=$room5;
$_SESSION["room6"]=$room6;
}
?>
<HTML内>
空室<?php print $_SESSION["room1"]?>室
・
・
・
<HTML内>
<?php
//vacancy-info.phpに表示されている空室の値を書き込む
$data="$room1,$room2,$room3,$room4,$room5,$room6";
//ファイルオープン
$pointer=fopen("data/room-info.txt", "w");
//ファイルロック
flock($pointer, LOCK_EX);
//書き込み処理
fputs($pointer, $data);
//ファイルロック解除
flock($pointer, LOCK_UN);
//ファイルクローズ
fclose($pointer);
?>
■情報設定ページ(vacancy-infomaneger.php)
<?php
////vacancy-info.phpに表示されている空室の値を読み込む
//ファイルオープン
$pointer=fopen("data/room-info.txt", "r");
//データを取り出す
$data = fgets($pointer);
//スプリット
$room=split(",",$data);
//ファイルクローズ
fclose($pointer);
?>
<HTML内>
現在の空室 <?php print "$room[0]\n"?>部屋
・
・
・
<HTML内>
色々試してみているのでソースがおかしな場所もあるかと思います。
何方かお手数ではありますが、ご教授お願いします。
|