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

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

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

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

PHP

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

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

0回答

1521閲覧

AWS Cloud9 PHPプレビュー方法

natsuho0730

総合スコア10

Cloud9

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

PHP

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

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

1クリップ

投稿2019/03/10 02:43

初めまして。初心者です。
現在AWS Cloud9 で PHPで問い合わせフォームを作っています。

現在サンプルコードをコピーして、動作確認をしているのですが、
プレビュー時に確認画面から送信を押しても、以下の画面が表示され
送信完了画面に移動することができません。
何をすれば良いのかわからないので、教えていただけると嬉しいです。
よろしくお願いします。

イメージ説明


「index.php」

<?php session_start(); $url = $_GET["type"]; $_SESSION["sendkey"] = "false"; if($url == "confirmation"){ $_SESSION["mailarea"] = htmlspecialchars($_POST['mailarea'], ENT_QUOTES); $_SESSION["namedata"] = htmlspecialchars($_POST['namedata'], ENT_QUOTES); $_SESSION["textboxdata"] = htmlspecialchars($_POST['textboxdata'], ENT_QUOTES); $mailareaErrorMessege = ""; $namedataErrorMessege = ""; if(empty($_SESSION["mailarea"])){ $mailareaErrorMessege = "メールアドレスが入力されていません。"; }elseif(!preg_match('/^([a-z0-9+_\-]+)(.[a-z0-9+_\-]+)*@([a-z0-9\-]+.)+[a-z]{2,6}$/iD', $_SESSION["mailarea"])){ $mailareaErrorMessege = "メールアドレスの形式が間違っています。"; }; if(empty($_SESSION["namedata"])){ //名前が入力されてなければnamedataErrorMessegeにエラーメッセージを入力。 $namedataErrorMessege = "お名前が入力されていません。"; }; if(empty($mailareaErrorMessege)&&empty($namedataErrorMessege)){ //エラーメッセージが存在しなければ「確認ページ」にリダイレクト。 header('Location: confirmation.php'); exit; }; }; ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>サンプル</title> <meta name="description" content="サンプル"> <meta name="keywords" content="aaa"> <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"> <link href="css/reset.css" rel="stylesheet" type="text/css"> </head> <body>
<form class="profBox" id="formarea" method="post" action="index.php?type=confirmation"> <h1>メールフォーム</h1> <dl> <dt>メールアドレス※</dt> <dd> <div> <input type="text" name="mailarea" placeholder="xxx@mail.com" class="inputText mailarea" value="<?php echo $_SESSION["mailarea"]; ?>" /> <?php if(!empty($mailareaErrorMessege)): ?> <div class="erroebox"><?php echo $mailareaErrorMessege;?></div> <?php endif;?> </div> </dd> </dl> <dl> <dt>お名前※</dt> <dd> <div> <input type="text" name="namedata" placeholder="例) 佐々木 太郎" class="inputText namearea" value="<?php echo $_SESSION["namedata"]; ?>" /> <?php if(!empty($namedataErrorMessege)): ?> <div class="erroebox"><?php echo $namedataErrorMessege; ?></div> <?php endif;?> </div> </dd> </dl> <dl> <dt>備考</dt> <dd> <div> <textarea name="textboxdata" class="textboxdata textboxarea"><?php echo $_SESSION["textboxdata"]; ?></textarea> </div> </dd> </dl> <div class="makesurebox"> <button class="btnStyle1 submitarea">確認</button> </div> </form>
</body> </html>

「confirmation.php」

<?php session_start(); if(!empty($_SESSION["mailarea"])){ $_SESSION["sendkey"] = "true"; }else{ header('Location: index.php'); exit; }; ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>サンプル</title> <meta name="description" content="サンプル"> <meta name="keywords" content="aaa"> <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"> <link href="css/reset.css" rel="stylesheet" type="text/css"> </head> <body>
<form class="profBox" id="formarea" method="post" action="send.php"> <h1>メールフォーム</h1> <dl> <dt>メールアドレス※</dt> <dd> <div> <?php echo $_SESSION["mailarea"]; ?> </div> </dd> </dl> <dl> <dt>お名前※</dt> <dd> <div> <?php echo $_SESSION["namedata"]; ?> </div> </dd> </dl> <dl> <dt>備考</dt> <dd> <div> <?php echo $_SESSION["textboxdata"]; ?> </div> </dd> </dl> <div class="backandsendbox"> <a href="index.php" class="btnStyle1 backBtnArea mgb10px">戻る</a> <button class="btnStyle1 sendBtnArea">送信</button> </div> </form>
</body> </html>

「send.php」

<?php session_start(); //もし$_SESSION["sendkey"]がtrueだったら送信可能に。 if($_SESSION["sendkey"] == "true"){ $mailarea = $_SESSION["mailarea"]; $namearea = $_SESSION["namedata"]; $textboxarea = $_SESSION["textboxdata"]; header("Content-Type:text/html; charset=UTF-8"); mb_language("japanese"); mb_internal_encoding("utf-8"); $mail="mymail@gmail.com"; $sub1="[自動返信] お問合せが完了しました"; $mail_to = $mailarea; $messegeall .= "お問合せありがとうございます。\n"; $messegeall .= "今後とも、何卒、よろしくお願いいたします。\n"; $messegeall .= "\n"; $messegeall .= "─登録内容の確認─────────────────\n"; $messegeall .= "\n"; $messegeall .= "お名前:".$namearea."\n"; $messegeall .= "メールアドレス:".$mailarea."\n"; $messegeall .= "テキスト:\n"; $messegeall .= $textboxarea."\n"; $messegeall .= "\n"; $messegeall .= "─────────────────────────\n"; $messegeall .= "\n"; $messegeall .= "============================================\n"; $messegeall .= "このメールは自動送信です。\n"; $messegeall .= "お心当たりのない方は、お手数をおかけいたしますが、\n"; $messegeall .= "下記メールアドレスまでご連絡ください。\n"; $messegeall .= "============================================\n"; $messegeall .= "━━━━━━━━━━━━━━━━━━━━━━━━━━\n"; $messegeall .= " my name\n"; $messegeall .= " E-mail:mymail@gmail.com\n"; $messegeall .= "━━━━━━━━━━━━━━━━━━━━━━━━━━\n"; $success1=mb_send_mail($mail_to,$sub1,$messegeall,"From:".$mail); $success2=mb_send_mail($mail,$sub1,$messegeall,"From:".$mail_to); session_destroy(); }else{ header('Location: index.php'); exit; }; ?> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>サンプル</title> <meta name="description" content="サンプル"> <meta name="keywords" content="aaa"> <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"> <link href="css/reset.css" rel="stylesheet" type="text/css"> </head> <body>
<form class="profBox" id="formarea" method="post" action="index.php"> <h1>送信が完了しました。</h1> <p> お問合せ、ありがとうございました。<br> 今後とも、何卒よろしくお願いいたします。 </p> <div class="backandsendbox"> <a href="index.php" class="btnStyle1 backBtnArea mgb10px">トップに戻る</a> </div> </form>
</body> </html>

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

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

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

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

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

m.ts10806

2019/03/10 09:16

コードはマークダウンのcode機能を利用してご提示ください。またエラーログもご確認ください(cloud9使ったことないですが調べれば確認方法はすぐでてくるの思います)
tukatter

2019/03/12 03:50

「confirmation.php」のバックアップを残した状態で <!DOCTYPE html>以降を消したファイルで実行してみるといいかもしれません。 ログの情報も大事でしょう。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問