PHP初心者のためのカレンダースケジュール作成の質問

このQ&Aのポイント
  • PHP初心者の方がカレンダースケジュールを作成する方法について質問しています。年と月を選択し、selectボタンを押すと2010年から2020年までのカレンダーが表示されますが、スケジュール欄にテキストボックスを作りたいという課題につまづいています。
  • 質問者はまだPHPを始めたばかりであることを述べており、助言や教授を求めています。PHP初心者の方に役立つ情報をお待ちしています。
  • 質問の答えとして、HTMLのフォームやテーブルを使ってカレンダーを表示しています。選択された年と月に基づいて日にちと曜日を表示し、スケジュール欄にはテキストボックスを表示しています。
回答を見る
  • ベストアンサー

PHP初心者です。

PHP初心者です。カレンダースケジュールを作りたいのですが、以下について質問させていただきます。 selectボタンで2010~2020までのカレンダーを表示させることは出来たのですが、スケジュール欄にテキストボックスを作り、スケジュールを保存したいのですが、この部分でつまづいています。 PHPを勉強し始めて日が浅いのですが、宜しくお願い致します。 どなたかご教授下さい。 <html> <meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> <body> <form method="post" action="<? print($PHP_SELF); ?>"> <select name="year"> <? for($nen=2010 ; $nen<2020; $nen++){ $kotosi=date("Y"); if($kotosi==$nen){ print("<option value='".$nen."' selected>".$nen."</option>"); }else{ print("<option value='".$nen."'>".$nen."</option>"); } } ?> </select> 年 <select name="month"> <? for($tuki=1 ; $tuki<13; $tuki++){ $kongetu=date("n"); if($kongetu==$tuki){ print("<option value='".$tuki."' selected>".$tuki."</option>"); }else{ print("<option value='".$tuki."'>".$tuki."</option>"); } } ?> </select> 月 <input type="submit" value="表示"> </form> <table border> <tr><th>日付</th><th>曜日</th><th>スケジュール</th></tr> <? $year=$_POST["year"]; $month=$_POST["month"]; $wstr=array('日','月','火','水','木','金','土'); for($i=1;checkdate($month,$i,$year);$i++){ $t=mktime(0,0,0,$month,$i,$year); $w=date("w",$t); print("<tr><td>".$i."</td><td>".$wstr[$w]."</td><td><input type='text' size='30'><input type='submit' value='Buttom'></td></tr>"); } ?> </table> </body> </html>

  • PHP
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 >スケジュール欄にテキストボックスを作り、スケジュールを保存したいのですが、この部分でつまづいています。 この部分とはどの部分を示しますか? 保存自体の方法がわからないのか、ボタンを押した時の話なのか。 登録するにもデータベースを利用しているとか、テキストファイルとしてデータを保存するとか仕様に不明瞭な部分が多く、回答が難しいです。 ・データはどのように持つのか(データベースを使うとか、年月別のファイルを持つとか、日付ごとに持つとか) ・登録後はどのような表示になるのか(その日は登録できなくなって、登録した内容が表示されるとか、何個でも登録できるとか) ・そのほか 自分の実現したい機能(仕様)が無いと回答がつきにくいと思います。

42ceo1014
質問者

お礼

ご回答有難う御座います。PHPを勉強し始めて日が浅いもので、保存にもデータベースやテキストファイルがあるのですね。 ご回答を参考にもう少し勉強してみます。有難う御座いました。

関連するQ&A

  • php言語にて

    <?php print "<form><table border=\"1\" cellpadding=\"5\">\n"; for($i=0;$i<6;$i++){ if($i==0){print "<tr><td>&nbsp;</td><th>月曜日</th><th>火曜日</th><th>水曜日</th><th>木曜日</th><th>金曜日</th></tr>\n"; continue; } print "<tr><td align=\"center\">$i<br>限</td>"; for($j=1;$j<6;$j++){ print "<td><select name=\"kamoku$j$i\"><option value=\"\"> <option value=\"科目A\">科目 A<option value=\"科目B\">科目 B<option value=\"科目C\">科目 C<option value=\"科目D\">科目 D<option value=\"科目E\">科目 E<option value=\"科目F\">科目 F<option value=\"未定\">未定 </select> </td>"; } print "</tr>\n"; } print "</table>\n</form>"; ?> これにボタンを付けて、ボタンを押したら操作をできなくするにはどうすればいいですか? 保存のような機能を付けたいのですが… なにか参考になるサイトはありませんか?

    • 締切済み
    • PHP
  • phpのリンクについて

    <?php print "<form><table border=\"1\" cellpadding=\"5\">\n"; for($i=0;$i<6;$i++){ if($i==0){print "<tr><td>&nbsp;</td><th>月曜日</th><th>火曜日</th><th>水曜日</th><th>木曜日</th><th>金曜日</th></tr>\n"; continue; } print "<tr><td align=\"center\">$i<br>限</td>"; for($j=1;$j<6;$j++){ print "<td><select name=\"kamoku$j$i\"><option value=\"\"> <option value=\"科目A\">科目 A<option value=\"科目B\">科目 B<option value=\"科目C\">科目 C<option value=\"科目D\">科目 D<option value=\"科目E\">科目 E<option value=\"科目F\">科目 F<option value=\"未定\">未定 </select> </td>"; } print "</tr>\n"; } print "</table>\n</form>"; ?> (1)プルダウンではなく、リンクを表の中に入れる。 (2)リンク先に教科がいくつかあって、その中から教科を選択する (3)その選択した教科を表に反映させる。 上記のようなことをしたいんですけど、どうすればいいかわかりません。 どうかよろしくお願いします。

    • 締切済み
    • PHP
  • 値の取得

    先日と同じ問題を出してしまい、申し訳ございません。 iの値を取得したいですが、どうしてもservlet側を取得が出来ないです。 教えてください。 <%@page contentType="text/html; charset=Windows-31J"%> <%@ page import="java.util.*" %> <%@ page import="blog.*" %> <html> <body> <script type="text/javascript"> <!-- function check(){ if(window.confirm('本当に削除してよろしいでしょうか?')){ // 確認ダイアログを表示 var element = document.getElementById("i") request.setAttribute("id", element);// return true; // 「OK」時は送信を実行 } else{ // 「キャンセル」時の処理 window.alert('キャンセルされました'); // 警告ダイアログを表示 return false; // 送信を中止 } } //--> </script> <center> <table> <form action="SeachServlet" method="POST"> <tr> <td>名前:<input type="text" name="name" size="40" value="<%if(request.getAttribute("name")!=null){%> <%=request.getAttribute("name")%><%}%>"></td></tr> <tr><td>日付: <select name="year"> <option><%if(request.getAttribute("year")!=null){%> <%=request.getAttribute("year")%> <%}%></option> <%Calendar cl=Calendar.getInstance(); int year = cl.get(Calendar.YEAR); for(int i=year-7; i<=year+3;i++){ %> <option value="<%=i %>"> <%=i %></option> <%} %> </select>年 <select name="month"> <option><%if(request.getAttribute("month")!=null){%> <%=request.getAttribute("month")%> <%}%></option> <% for(int i=1; i<=12;i++){ if(i<10){%> <option value="0<%=i %>">0<%=i %></option> <%}else{%> <option value="<%=i %>"><%=i %></option> <%}}%> </select>月 <select name="day"> <option><%if(request.getAttribute("day")!=null){%> <%=request.getAttribute("day")%> <%}%></option> <% for(int i=1; i<=31;i++){ if(i<10){%> <option value="0<%=i %>">0<%=i %></option> <%}else{%> <option value="<%=i %>"><%=i %></option> <%}}%> </select>日</td> </tr> <tr><td><input type="button" value=" 印刷 "></td> <td><input type="submit" name="seach" value=" 検索 "></td> </form> </tr> </table> <hr> <FORM> <div><input type="button" value=" 戻る " onClick="history.back()"></div> </FORM> <form action="SeachServlet" method="POST"> <% List<Loginbeans> list = (List<Loginbeans>)request.getAttribute("productlist"); if(list.isEmpty()){ out.print("該当のデータはありません。"); }else{ %> <table border="1"> <tr><th>ユーザID</th><th>名前</th><th>日付</th></tr> <% int i=0; for (Loginbeans bn : list) { i++;//この値を取得したいです %> <tr><td><%=bn.getUser_id()%><input name="use_id" type="hidden" value="<%=bn.getUser_id() %>"/></td> <td><%=bn.getName()%><input name="name" type="hidden" value="<%=bn.getName()%>"/></td> <td><%=bn.getTotal()%><input name="total" type="hidden" value="<%=bn.getTotal()%>"/></td> <td><input id="<%=i%>" type="submit" value=" 削除 " name="delete" onClick="return check()"></td> </tr> <%}}%> <input type="hidden" name ="number" value ="element"> </form> </table> </center> </body> </html> selvet側で String id = (String)request.getAttribute("id"); String ida = request.getParameter("number"); 取得できないですが・・

  • PHPで日付の範囲検索

    PHPを使って日付の範囲検索を実装しています。日付をセレクトフォームで選択し、該当する日時をSELECT文で記述するという流れです。イメージは以下のような感じですが、大体合っていますか? <? php if (!empty(filter_input(INPUT_POST, 'day'))) { $day = filter_input(INPUT_POST, 'day'); ・・・・ SELECT 文   ・・・・ ?> <html> <div class="search"> <form method="post"> <select name="year"> <?php for ($i=2000; $i <= 2021; $i++) { $year .= '<option value="'.$i.'">'.$i.'年</option>'; } ?> </select> <select name="month"> <?php for ($i=1; $i <= 12; $i++) { $month .= '<option value="'.$i.'">'.$i.'月</option>'; } ?> </select> <select name="day"> <?php for ($i=1; $i <= 31; $i++) { $day .= '<option value="'.$i.'">'.$i.'日</option>'; } ?> </select> <input type="hidden" name="search" value="<?php echo $_POST['year'].'-'. $_POST['month'].'-'. $_POST['date']; ?>"> <input type="submit" value="検索"> </form> </div> </html>

    • ベストアンサー
    • PHP
  • PHPによるカレンダーについて

    PHPでカレンダーを作成しています。 プルダウンで年月を指定し、更新ボタンを押せば、指定した年月のカレンダーを表示させたいのですが、うまくいきません。 更新ボタンを押してもカレンダーが変わらないです。 KOMOカレンダーというサイトを参考にして、文字コードを変えただけです。 教えてくださる方がいらっしゃいましたら宜しくお願いいたします。 <?php $last_year = 2037; $wday_color = "#000000"; $sat_color = "#0000ff"; $sun_color = "#ff0000"; $reg_color = "#ffccff"; $year = (!isset($year)) ? date("Y") : $year; $month = (!isset($month)) ? date("n") : $month; ?> <HTML> <HEAD> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <TITLE>カレンダー</TITLE> </HEAD> <BODY> <P><FONT SIZE="6" COLOR="#006600">カレンダー</FONT></P> <P> <TABLE BORDER="1"CELLSPACING="1" CELLPADDING="1"> <TR> <TD COLSPAN="7"> <SELECT NAME="year"> <?php for($i = 2002; $i <= $last_year; $i++){ echo "<option value=".$i.(($i == $year) ? ' selected':'').">".$i."年\n"; } ?> </SELECT> <SELECT NAME="month"> <?php for($i = 1; $i <= 12; $i++){ echo "<option value=" . $i . (($i == $month) ? ' selected':'').">".$i."月\n"; } ?> </SELECT> <INPUT TYPE="SUBMIT" NAME="Submit" VALUE="更新"></TD> </TR> <TR> <TD> <P ALIGN="CENTER"><FONT COLOR="red">日</FONT> </TD> <TD> <P ALIGN="CENTER">月 </TD> <TD> <P ALIGN="CENTER">火 </TD> <TD> <P ALIGN="CENTER">水 </TD> <TD> <P ALIGN="CENTER">木 </TD> <TD> <P ALIGN="CENTER">金 </TD> <TD> <P ALIGN="CENTER"><FONT COLOR="blue">土</FONT> </TD> </TR> <?php $time = mktime(0, 0, 0, $month, 1, $year); $day_of_first = date("w", $time); $date_of_month = date("t", $time); $week_of_month = ceil($date_of_month / 7); if(($date_of_month % 7 > 7 - $day_of_first) || ($date_of_month % 7 == 0 && $day_of_first != 0)){ $week_of_month++; } for($i = 1; $i <= $week_of_month * 7; $i++){ if($i % 7 == 1){ echo "<tr>"; } if(($i - 1 < $day_of_first) || ($i > $date_of_month + $day_of_first)){ echo "<td>&nbsp;</td>"; }else{ if($i % 7 == 1){ $color = $sun_color; }elseif($i % 7 == 0){ $color = $sat_color; }else{ $color = $wday_color; } echo "<td width=30 height=30 align=right valign=top>"; echo "<font color=" . $color . ">"; echo $i - $day_of_first; echo "</font></td>"; } if($i % 7 == 0){ echo "</tr>\n"; } } ?> </TABLE> </FORM> </BODY> </HTML>

    • ベストアンサー
    • PHP
  • フォントをまとめて<h5>にできないでしょうか!?

     JabaScriptプログラム抜粋です。  表の中の文字が大きすぎてはみ出してしまいます。  そこで、<h5>にすればちょうど枠内に収まりました。 個々の構文に<h5>タグを入れてもいいのですが、まとめて、できる方法は、  ございませんか!?以下よろしくお願いします。 <tr> <tr><th><h5>代表者名</5>:</th><td><input type="text" id="name" size="16"/></td></tr> <tr><th>所属組織:</th><td><input type="text" id="org" size="24"/></td></tr> <tr><th>連絡住所:</th><td><input type="text" id="addr" size="50"/></td></tr> <tr><th>電話番号:</th><td><input type="text" id="tel" size="16"/></td></tr> <tr><th>メルアド:</th><td><input type="text" id="mail" size="40"/></td></tr> <tr> <th>コース選択</th> <td id="selc"> <input type="radio" name="course" value="Aコースドリンク" />Aコース+ドリンク &nbsp;&nbsp;<input type="radio" name="coures" value"Aコースワイン" />Aコース+ ワイン<br/> <input type="radio" name="course" valus="Bコースリンク" />Bコース+ドリンク &nbsp;&nbsp;<input type="radio" name="course" value="Cコースワイン"/>Cコース+ワイン </td> </tr> <tr><th>参加人数:</th> <td> <select id="nums"> <option value="NA">選択</option> <option value="01">01人</option> <option value="02">02人</option> <option value="03">03人</option> <option value="04">04人</option> <option value="05">05人</option> <option value="06">06人</option> <option value="07">07人</option> <option value="08">08人</option> <option value="09">09人</option> <option value="10">10人</option> </select> <tr><th>処理結果:</th><td id="status">&nbsp;</td></tr> </table> </body> </html>

  • セレクトボックスの内容を次のページで受け取る方法

    <form action="./check.asp" method="POST"> <table> <tr> <td> <select name="year"> <option value="2006" >2006</option> <option value="2007" >2007</option> <option value="2008" >2008</option> </select> </td> </tr> <tr> <td align="center"><input type="submit" value="確認する"></td> </tr> </table> </form> として 次のページで YEAR =Trim(request("year")) Response.Write YEAR で受け取り表示しようとしていますが取れません。なぜですか?教えてください

  • このPHP記述を修正願います

    にわかプログラマーです。 PHP記述に詳しい方、ひとつ教えてください。 ■現在、下記PHP記述があるとして、これをHTML出力すると echo "<tr><td>日付:$date</td></tr><tr><td><select name=\"ayear\">"; for($i = 2002; $i <= $last_year; $i++){ echo "<option value=" . $i . (($i == $year) ? ' selected' : '') . ">" . $i . "</option>"; } ■こう出力されてしまいます。 <option value=2013 selected>2013</option> これを ■下記のように出力できるようにしたい <option value="2013" "selected">2013</option> (HTML記述として""で閉じられていないのを解決したい) 上記PHPを修正したいのですが、どなたか記述を修正していただけないでしょうか。 不躾な質問で申し訳ないですがよろしくお願い致します。

    • ベストアンサー
    • PHP
  • form id、nameの番号振りなおし

    jqueryとphpにてフォームを作成しています。 フォームの追加、削除できるシステムを作っており、 フォームの追加はできたので、削除した際のinputのnameやidの番号を振り直しができず困っています。 商品1<br> <a href="javascript:void(0);" class="del" id="del_1">削除</a> <table> <tr> <th>商品番号</th> <td><input type="text" name="item[data][1][sir]" value="<?php echo $item[data][1][sir]; ?>"></td> </tr> <tr> <th>商品名</th> <td><input type="text" name="item[data][1][name]" value="<?php echo $item[data][1][name]; ?>"></td> </tr> <tr> <th>商品個数</th> <td> <select name="item[data][1][num]"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> </td> </tr> </table> <a href="javascript:void(0);" id="add">フォームの追加</a> としており、 「フォームの追加」をクリックすると 商品2<br> <a href="javascript:void(0);" class="del" id="del_2">削除</a> <table> <tr> <th>商品番号</th> <td><input type="text" name="item[data][2][sir]" value="<?php echo $item[data][2][sir]; ?>"></td> </tr> <tr> <th>商品名</th> <td><input type="text" name="item[data][2][name]" value="<?php echo $item[data][2][name]; ?>"></td> </tr> <tr> <th>商品個数</th> <td> <select name="item[data][2][num]"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> </td> </tr> </table> 商品3<br> <a href="javascript:void(0);" class="del" id="del_3">削除</a> <table> <tr> <th>商品番号</th> <td><input type="text" name="item[data][3][sir]" value="<?php echo $item[data][3][sir]; ?>"></td> </tr> <tr> <th>商品名</th> <td><input type="text" name="item[data][3][name]" value="<?php echo $item[data][3][name]; ?>"></td> </tr> <tr> <th>商品個数</th> <td> <select name="item[data][2][num]"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> </td> </tr> </table> ができるようにPHPにてSESSION管理をおこなっています。 追加はできたのですが、 上記のフォーム4つほど出した後に商品2を削除した場合の商品1、商品3、商品4の各nameの番号(item[data][*][sir]、item[data][*][name]、item[data][*][num]の*部分) 振りなおしができず困っています。 いくらやってもできないため、どなたかソースを教えていただけないでしょうか。 宜しくお願いいたします。

  • phpでのselect値の取得・表記について

    php初心者です。 自動計算する見積ページを独学で作っているのですが、どうしてもわからなかったので、質問させてください。 htmlページでセレクトタグから選択してもらった結果(値)を、phpページに送信し、phpページでvalueとname両方を別々の場所に表記するには、どのようなコードを書けば良いでしょうか? valueの値をphpページで表記させたり計算させる事はなんとか独学でもできたんですが、nameを表記させる事がどうしてもできませんでした。 お詳しい方、何卒ご教授ください。 途中までなんとかできたタグを下記に記載します。 <例>input.html → output.php (1)input.html (細かいタグは端折ります) <html> <body> <form action="output.php" method="post"> <tr> <th>生菓子</th> <td> <select name="goods1" onChange="keisan()" style="padding:5px; border:1px solid #dcdcdc;" /> <option value="0" name="未選択">お選びください</option> <option value="500" name="フルーツケーキ">フルーツケーキ</option> <option value="3000" name="チーズケーキ">チーズケーキ</option> <option value="5000" name="チョコレートケーキ">チョコレートケーキ</option> <option value="※別途見積" name="おまかせ">おまかせ</option> </td> </tr> <tr> <tr>焼き菓子</th> <td> <select name="goods2" onChange="keisan()" style="padding:5px; border:1px solid #dcdcdc;" /> <option value="0" name="未選択">お選びください</option> <option value="500" name="クッキー">クッキー</option> <option value="3000" name="パウンドケーキ">パウンドケーキ</option> <option value="5000" name="パイ">パイ</option> <option value="※別途見積" name="おまかせ">おまかせ</option> </td> </tr> <tr> <th><input type="submit" value="submit" /></th> </tr> </form> </body> </html> ↓上記で選択してもらった値を下記のoutput.phpにsubmit。 (2)output.php (細かいタグは端折ります) <html> <body> <tr> <th>生菓子</th> <td>ここに選択されたnameの値を表記したい!</td> <td><?php echo htmlspecialchars($_POST["goods1"]); ?></td> </tr> <tr> <th>焼き菓子</th> <td>ここに選択されたnameの値を表記したい!</td> <td><?php echo htmlspecialchars($_POST["goods2"]); ?></td> </tr> <tr> <td colspan="2">Total </td> <td><?php echo htmlspecialchars( $_POST["goods1"] + $_POST["goods2"]); ?><td> </tr> </body> </html> 以上。 ぜひ、ぜひぜひご教授よろしくお願いいたします。

    • 締切済み
    • PHP

専門家に質問してみよう