アプリ版:「スタンプのみでお礼する」機能のリリースについて

よろしくお願いいたします。

宿の空室状況を伝えるシステム(添付画像)を以下の4つのPHPで作りました。
1.日付選択カレンダー
2.編集画面
3.編集結果
4.サイトに表示される画面

数年は順調に動いていたのですが、来年のカレンダー表記にエラーが出てしまいます。
全てのソースを見ていただこうとしましたが、gooのシステムではじかれてしまいました。

そこで、文章で【1.日付選択カレンダーの構成】を見ていただき、補足にてソースを少しずつ表示したいと思います。
※一回掲載して補足を試しましたが、文字数の制限で全てのソースを掲載できなさそうです。
怪しいと思われる部分をご指摘いただき次第、ソースを補足に加えますので、ご指定ください。

わかり難い質問になってしまい申し訳ありませんが、焦っています。
よろしくお願いいたします。


【1.日付選択カレンダーの構成】(構成10の★印の部分が発動?してしまいます。)

1.入力された年の有無を調べて、無い場合は現在の年を取得して設定

2.エラーチェック(年)
 a.4文字以外はエラー
 b.1~9999の範囲以外はエラー
 c.空はエラー
 d.半角数字以外はエラー

3.エラーチェック(月)
 a.1または2ではない場合はエラー
 b.1~12の範囲以外はエラー
 c.空はエラー
 d.半角数字以外はエラー

4.前の月を設定(年をまたぐ場合に対応)1より小さい場合は前の年にして12を設定

5.次の月を設定(年をまたぐ場合に対応)12より大きい場合は次の年にして1を設定

6.次の次の月を設定(年をまたぐ場合に対応)12より大きい場合は次の年にして1を設定

7.先月ボタン フォームで同画面内推移

8.来月ボタン フォームで同画面内推移

9.年月の配列設定

10. カレンダー表記
 a.テキストファイル名を指定して呼び出し
 b.年月の変数からテキストのファイル名を作って前にフォルダ、後ろに拡張子を付ける
★c.ファイルオープンして、ファイルが無かった場合はメッセージ
 d.1日までの曜日を空欄に
 e.テキストの1行を配列に設定
 f.テキストの最終行でない限り
 g.1行ずつ取り出して配列にセット
 h.カレンダー表記
  ・日が存在する限り
  ・年、月(2桁)、日(2桁)に分けて変数にセット
  ・予定入力画面に送る
  ・配列で該当日のインデックスに設置されているテキストをステータスとコメントに分解
  ・ステータスを空室状況を表すマークに
  ・改行タグを入れてテーブル内に表記
  ・土曜日は改行して、もし次の日が存在するのならば<tr>を表記
  ・オープンしたファイルの使用終了
  ・7日(1週)から曜日番号に1を足した数値を引いた数値を空欄に
  ・土曜日の場合は列を終了して
  ・テーブルも終了

「PHP:カレンダーの来年1月からが表示さ」の質問画像

A 回答 (1件)

10.c でオープンされるべきファイルはサーバ上に存在しているのですか?

    • good
    • 0
この回答へのお礼

素早いお答え、ありがとうございます!!

10. カレンダー表記 c. は下記のとおりです。
サーバーには、確かにPHPファイルと同じフォルダに「data」というフォルダがあり、これに空室状況のマークを呼び出すアルファベットが日数分(31個)書いてあるtxtファイルがあります。そして、このファイルが
201812.txtまでしかありません。

・・・・これ・・・でしょうか?!
201901.txt以降を作ってアップすればよいのでしょうか??♪

※書き込もうとすると、ダブルクオーテーションマーク(上部のてんてんマーク)がHTMLの特殊文字になってしまうので、カギかっこ「 」に変更しています。


// 年月の変数からテキストのファイル名を作って前にフォルダ、後ろに拡張子を付ける

$file_name = 「./data/」 . $year[$i] . sprintf(「%02d」 , $month[$i]) . 「.txt」;

お礼日時:2018/10/20 23:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!