goichi様
ご返信ありがとうございます。
下記のソースのように、プルダウンで月を選んだあとにOnchangeでページの更新を行っています。
また、値を取得する際GET方式を用いてURLパラメータで値を渡しています。
月を選んだ後URLに値が反映されているため、値は渡されているという認識です。
URLに値が反映されているので、scheduleCalendarが機能していないということなのでしょうか。
ログイン時とログアウト時で挙動が違うという点がどうにもわかりません。
以上、宜しくお願い致します。
※以下ソースコード
<?php
function calendar(){
if($_SESSION["year"] == ""){
$_SESSION["year"] = date(Y);
}
if($_SESSION["month"] == ""){
$_SESSION["month"] = date(n);
}
/////////プルダウンリストから年を選んだ時の処理////////////
if($_GET['year']){
$_SESSION["year"] = $_GET['year'];
}
/////////プルダウンリストから月を選んだ時の処理////////////
if($_GET['month']){
$_SESSION["month"] = $_GET['month'];
}
/////////ココから今月の処理////////////
if(@$_GET['kongetu']){
$_SESSION["year"] = date(Y);
$_SESSION["month"] = date(n);
}
echo<<<EOT
<div class="calendar_box">
<div style="text-align:center;">
<div style="margin-left:auto; margin-right:auto;">
<form action="" method="GET">
<select name="year" onChange="submit()">
EOT;
for ($i = 2016; $i <= 2020; $i++) {
echo "<option value='".$i."'";
if ($i == $_SESSION["year"]) echo " selected";
$di = mb_convert_kana($i,A,"UTF8");
echo ">".$di."年</option>\n";
}
echo<<<EOT
</select>
<select name="month" onChange="submit()">
EOT;
for ($i = 1; $i <= 12; $i++) {
echo "<option value='".$i."'";
if ($i == $_SESSION["month"]) echo " selected";
$di = mb_convert_kana($i,A,"UTF8");
echo ">".$di."月</option>\n";
}
echo<<<EOT
</select>
<input type="submit" name="kongetu" value="今月">
</form>
</div>
</div>
EOT;
}
?><!--
<?php calendar(); ?>
<p><?php $this->BcBaser->scheduleCalendar($_SESSION["year"],$_SESSION["month"], array('title' => true)) ?></p>
<!--
<?php $this->BcBaser->getScheduleDatas($_SESSION["nen"], $_SESSION["tuki"]) ?>
<?php $this->BcBaser->schedules() ?>
-->