質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.59%

php7移行後のエラーについて

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 785

score 17

event-day.php
<?php
   //クエリパラメータから時間取得
   $get_event_time_start = $_GET[event_time_start];
   $get_event_time_end = $_GET[event_time_end];

   if ($get_event_time_start) {
      echo "<select name=\"ご希望時間\">";
      for ($i = $get_event_time_start * 2; $i <= $get_event_time_end * 2; $i++) {
         echo "<option value=" . date("H:i", strtotime("00:00 +". $i * 30 ." minute")) .  ">".date("H:i", strtotime("00:00 +". $i * 30 ." minute"));
      }
      echo "</select>";
   } else {
      echo "<select name=\"ご希望時間\" style=\"width: 100px;\" class=\"select_time\"><option value=\"\" selected=\"selected\"></option><option value=\"8:00\">8:00</option><option value=\"8:30\">8:30</option><option value=\"9:00\">9:00</option><option value=\"9:30\">9:30</option><option value=\"10:00\">10:00</option><option value=\"10:30\">10:30</option><option value=\"11:00\">11:00</option><option value=\"11:30\">11:30</option><option value=\"12:00\">12:00</option><option value=\"12:30\">12:30</option><option value=\"13:00\">13:00</option><option value=\"13:30\">13:30</option><option value=\"14:00\">14:00</option><option value=\"14:30\">14:30</option><option value=\"15:00\">15:00</option><option value=\"15:30\">15:30</option><option value=\"16:00\">16:00</option><option value=\"16:30\">16:30</option><option value=\"17:00\">17:00</option><option value=\"17:30\">17:30</option><option value=\"18:00\">18:00</option><option value=\"18:30\">18:30</option><option value=\"19:00\">19:00</option><option value=\"19:30\">19:30</option><option value=\"20:00\">20:00</option></select>";
   }

<?php
   //クエリパラメータから日付取得
      $get_event_start = $_GET[event_start];
      $get_event_end = $_GET[event_end];

      //タイムスタンプにしたものを変数に渡す
      $event_start = strtotime($get_event_start);
      $event_end = strtotime($get_event_end);

      // 1日の秒数
      $sec = 60 * 60 * 24;// 60秒 × 60分 × 24時間
      // 日付取得
      $key = 0;
      //曜日を表示
      $week = array("日", "月", "火", "水", "木", "金", "土");
      for ($i = $event_start ; $i <= $event_end ; $i += $sec) {
         $dates[$key]['date'] = date("Y年m月d日", $i);
         $w = date("w", $i);
         $dates[$key]['week'] = $week[$w];
         $key ++;
      }
      if ($event_start) {
         //時間指定がある場合
         echo "<select name=\"ご希望日\">";
         echo "<option value=\"\" selected=\"selected\">【選択してください】</option>";
         foreach($dates as $date){
             echo "<option value=" . $date['date'] . "(" . $date['week'] . ")" . ">". $date['date'] . "(" . $date['week'] . ")" . "</option>";
         }
         echo "</select><br>";
      } else {
         echo "<select name=\"ご希望日\" data-daystart=\"0\" data-daymax=\"60\" class=\"select_day\" data-weekexc=\"0,0,0,0,0,0,0\">";
         echo "<option value=\"\">【選択して下さい】</option>";
         echo "</select>";
      }

上記のコードを別々のファイルに書いています。
すると以下のようなエラーが出ます。

event-day.phpのエラー

Warning: Use of undefined constant event_start - assumed 'event_start' (this will throw an Error in a future version of PHP) in event-day.php on line 3 Warning: Use of undefined constant event_end - assumed 'event_end' (this will throw an Error in a future version of PHP) in event-day.php on line 4

event-time.phpのエラー

 Warning: Use of undefined constant event_time_start - assumed 'event_time_start' (this will throw an Error in a future version of PHP) in event-time.php on line 3 Warning: Use of undefined constant event_time_end - assumed 'event_time_end' (this will throw an Error in a future version of PHP) in event-time.php on line 4

php5系環境からphp7へ移行したというのもありそのせいだと思うのですが、どのように書き換えたらよいかご教示いただけますでしょうか。
よろしくお願い致します。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

+2

$_GET[event_time_start] → $_GET['event_time_start']

そのほかも同様

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/02/16 12:59

    解決できました。迅速なご回答ありがとうございました。

    キャンセル

+2

Use of undefined constant event_start で示されたとおりかと。
目的にあった形でキチンと対象箇所を記述すればよいです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/02/16 12:59

    ヒントとしてのご回答ありがとうございます。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.59%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る