前提・実現したいこと
PHPでカレンダー内に予定入力用のセレクトボックスを埋め込み、下部のPOST FORMでセレクトボックスで選択されたValueを読み込みたいです。
カレンダー自体は独立したphp関数で、implode関数を使ってhtmlファイルに出力しています。
カレンダーを出力したhtmlファイル内に設置したPOST FORM内のinput hiddenのvalueをどのように設計すればよろしいでしょうか。動的であるので、JavaScriptを使いそう………ということは察しましたが、当方JavaScriptは扱ったことがありません。
該当のソースコード
php
1 2日付、曜日...などの情報をテーブルで記述 3 4 $t_sch_key = array(); 5 $t_sch_key = array_keys($t_dt); 6 $cur_schedule[$j] = $all_cur_schedule[$t_sch_key[0]]; 7 $t_sch[] = '<select class="ctSelect" name="set_schedule'.$j.'"><option value="1"'; 8 if($cur_schedule[$j] == 1){ 9 $t_sch[] = 'selected'; 10 } 11 $t_sch[] = '>〇</option>'; 12 $t_sch[] = '<option value="2"'; 13 if($cur_schedule[$j] == 2 || empty($cur_schedule[$j])){ 14 $t_sch[] = 'selected'; 15 } 16 $t_sch[] = '>✕</option></select>'; 17 $j++; 18 } 19 20 21 $h[] = sprintf('<th align="left" valign="top" data-date="%s" style="%s"><span style="%s">%d</span><br>%s<br>%s</th>' 22 , $date->format('Y-m-d') 23 , ($today->format('Y-m-d') === $date->format('Y-m-d')) ? 'background-color:#FFFFE0' : '' 24 , implode('', $style) 25 , $date->format('d') 26 , implode('', $t_sch) 27 , implode('', $sch) 28 , implode('', $cap) 29 ); 30 if (6 == $date->format('w')){ 31 $h[] = '</tr>'; 32 } 33 $date->add(new DateInterval('P1D')); 34 } 35 $h[] = '</tbody>'; 36 $h[] = '</table>'; 37 return implode(PHP_EOL, $h); 38} 39
html
1 <div class="form"> 2 <form action="calendar.php" method="POST"> 3 <input type="hidden" name="set_schedule" value="'.$set_schedule[$j].'" />; 4 <p class="kakunin"> 5 <input type="submit" value="更新" class="btn_submit"> 6 </p> 7 </form> 8 </div> 9 10
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー