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

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

新規登録して質問してみよう
ただいま回答率
85.35%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

1071閲覧

PHPで実装をするとエラーが出て困っています。

yupa

総合スコア6

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/04/09 11:24

前提・実現したいこと

PHPを学習して初めて自分で実装するサイトを作成しました。
日付を入力すると記念日が簡単にわかるというサイトです。
日付を入力すると以下のようなエラーメッセージが出ます。

発生している問題・エラーメッセージ

Parse error: syntax error, unexpected '<', expecting end of file

PHPで初めてオリジナルサイトを作成しました。
記念日を簡単に調べることができるというサイトなんですが、入力した日を実装すると上記のメッセージが発生してしまいます。
ここが違うよという場所は全く関係ない場所をさしています。

該当のソースコード

<?php session_start(); // $_SESSIONが空だった場合、index.phpに飛ばす // urlに直接[sent.php]を入力してアクセスしてきたユーザーなどへの対策 if(!isset($_SESSION["try"])) { header("Location:index.php"); exit(); } // 前ページで入力させた情報を一致させる $_POST = $_SESSION["try"]; //初日を生成するために、それぞれの変数へ代入 $y = $_POST['year']; $m = $_POST['m']; $d = $_POST['d']; // 月、日の数字が一桁だった場合、左に0を追加する $mx = str_pad($m, 2, 0, STR_PAD_LEFT); $dx = str_pad($d, 2, 0, STR_PAD_LEFT); // $target_dayには(例)2000年1月1日と入る $target_day = $y."年".$m."月".$d."日"; ?> <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>即効でわかる記念日</title> <!-- bootstrap css --> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous"> <!-- fontawesome --> <script src="https://kit.fontawesome.com/bb4993db6b.js" crossorigin="anonymous"></script> <!-- style.cssを読み込み --> <link rel="stylesheet" href="css/style.css"> </head> <body> <nav class="navbar navbar-light py-3 bg-primary"> <a class="navbar-brand ml-3 d-none d-sm-block font-weight-bold text-white" href="#" style="font-size: 16px;">大切な人との記念日がすぐにわかる!</a> <a href="https://twitter.com/mugicat0617" target="_blank"> <button class="btn-sm btn-outline-color mr-5" type="button">作った人<i class="ml-2 fab fa-twitter"></i></button> </a> </nav> <main class="pt-5"> <div class="container mb-2"> </div> <div class="container bg-white rounded py-5 px-4"> <div class="border-bottom"> <p class="text-center">記念日はこちら</p> <p>あなたの大切な人との1ヶ月記念日は</p> <p class="result"><b><?php echo date("Y年m月d日", strtotime('$target_day +1 month')); ?></b>です。</p> <p>あなたの大切な人との6ヶ月記念日は</p> <p class="result"><b><?php echo date("Y年m月d日", strtotime('$target_day +6 month')); ?></b>です。</p> <p>あなたの大切な人との1年記念日は</p> <p class="result"><b><?php echo date("Y年m月d日", strtotime('$target_day +1 year')); ?></b>です。</p> <p>あなたの大切な人との5年記念日は</p> <p class="result"><b><?php echo date("Y年m月d日", strtotime('$target_day +5 years')); ?></b>です。</p> <p>あなたの大切な人との10年記念日は</p> <p class="result"><b><?php echo date("Y年m月d日", strtotime('$target_day +10 years')); ?></b>です。</p> <p>あなたの大切な人との20年記念日は</p> <p class="result"><b><?php echo date("Y年m月d日", strtotime('$target_day +20 years')); ?></b>です。</p> <p>あなたの大切な人との30年記念日は</p> <p class="result"><b><?php echo date("Y年m月d日", strtotime('$target_day +30 years')); ?></b>です。</p> <p>あなたの大切な人との40年記念日は</p> <p class="result"><b><?php echo date("Y年m月d日", strtotime('$target_day +40 years')); ?></b>です。</p> <p>あなたの大切な人との50年記念日は</p> <p class="result"><b><?php echo date("Y年m月d日", strtotime('$target_day +50 years')); ?></b>です。</p> <p class="pt-4">さぁ、何をボーッとしてるんです!ちゃんと手帳や携帯に書き込みましたか?</p> <p class="pb-4">あなたの大切な人との記念日に、サプライズなんかして株を上げちゃいましょう〜!</p> </div> </div> </main> <footer class="py-4 text-center text-white bg-primary"> <p>© 2020 All Rights Reserved.</p> </footer> </body> </html>

試したこと

PHPを学習して初めて自分で実装してみました。
初めは<? php の終了タグを書いておらず、それを修正しても全く同じエラーが表示されます。
PHPのコードも正しいのか自信もないんですが…

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Lulucom

2020/04/09 12:45

掲載されたsent.phpではなく、index.phpの方に問題があるのではないでしょうか。
yupa

2020/04/09 13:33

回答ありがとうございます。 もう一度確認してみたら保存をしているつもりだったんですがちゃんとできていなかったようで、もう一度ファイルを作り直してみたら実装されました! けれど実装自体の計算の書き方がおかしいらしく全部同じ日付になりガックシ… 表示されたので本当に良かったです! ありがとうございました。次はちゃんと記念日が出るように実装の計算を頑張ります!
guest

回答1

0

ベストアンサー

ちゃんと保存した?
ちゃんとアップロードした?
ちゃんとキャッシュクリアした?

投稿2020/04/09 11:29

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yupa

2020/04/09 12:32

回答ありがとうございます。 保存はしており、キャッシュクリアもしました。 アップロードはindex.phpではちゃんと表示され、日付を入力してsent.phpへ実装するとエラーメッセージが出てしまいます。 コードが間違っているのかどうかも自信がなく行き詰まってます。
退会済みユーザー

退会済みユーザー

2020/04/09 12:39

該当のソースコード、自体は特に文法エラーがないため、そこじゃないのではないかと思われます。
yupa

2020/04/09 13:36

ありがとうございました! 保存をしているつもりがちゃんとできておらず、反映されていませんでした。 直してもなぜかできないのでもう一度ファイルを作り直したところ、ちゃんと表示されました! 記念日がちゃんと計算できないという課題は残りましたが…笑 とりあえず一歩進めて良かったです!これからちゃんと記念日が出るように直していきます! ありがとうございました。1週間行き詰まってたので本当に良かったです!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問