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

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

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

POSTはHTTPプロトコルのリクエストメソッドです。ファイルをアップロードしたときや入力フォームが送信されたときなど、クライアントがデータをサーバに送る際に利用されます。

PHP

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

Q&A

解決済

1回答

1150閲覧

php(POST)について

Cherry1217

総合スコア24

POST

POSTはHTTPプロトコルのリクエストメソッドです。ファイルをアップロードしたときや入力フォームが送信されたときなど、クライアントがデータをサーバに送る際に利用されます。

PHP

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

0グッド

0クリップ

投稿2019/02/03 13:10

編集2019/02/03 13:16

●PHPのpostについて

PHP初心者です。
以下のPHPを書いたのですが、データがpostされません。

そもそもの書き方が悪いのでしょうか?

ご回答の程、宜しくお願いします。

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <meta name="description" content="アンケートフォーム"> <link rel="stylesheet" href="/Applications/MAMP/htdocs"> <title>アンケートフォーム</title> </head> <body> <h2>アンケートフォーム</h2> <from action="question2.php" method="post"> <dl class="clearfix"> <dt>性別は?</dt> <dd> <?php $male = '男性'; $female = '女性'; $number = array('1' , '2');
echo ' <label><input type="radio" name="gender" value="' . $number[0] . '" />' . $male . '</label>' . "¥n"; echo ' <label><input type="radio" name="gender" value="' . $number[1] . '" />' . $female . '</label>' . "¥n"; ?>
</dd> <dt>年齢は</dt> <dd> <label> <select name="age"> <option value="0" selected="selected">選択してください</option> <?php for ($num = 1; $num <= 4; $num++){ echo '<option value = "' . $num . '">' . $num . '0代</option>' . "¥n"; } ?> <option value="5">50代以上</option> </select> </label> </dd> <dt>趣味は?</dt> <dd class="hobby-area"> <?php $hobby = array( 1 => '音楽鑑賞', 2 => '映画鑑賞', 3 => 'ドライブ', 4 => '旅行', 5 => 'その他'); foreach ($hobby as $key => $value) { echo ' <label><input type="checkbox" name="hobby[' . $key . ']" value="' . $key . '" />' . $value . '</label>' . "¥n"; } ?> </dd> </dl> <p> <input type="submit" value="投票する" /> </p> </from> <p class="copy"> &copy; 2010 PHP for web designer All fights reserned. </p> </body> </html> <!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <meta name="description" content="アンケート結果を送信しました"> <title>アンケート結果を受け付けました!!!</title> </head> <body> <div id="box"> <div id="header"> <h1>PHP for web Designer</h1> </div> <ul id="menu" class="clearfix"> <li class="active"><a href="index.php">アンケート</a></li> <li><a href="form1.php">メールフォーム</a></li> <li><a href="webapi/">グルメMAP></a></li> </ul>
<div id="main"> <h2>アンケートフォーム</h2> <?PHP $error = 0; if (isset($_POST['gender'])) { $gender = $_post['gender']; if (ctype_digit($gender)) { if(gender == 1){ $gendername = '男性'; } elseif ($gender == 2) { $gendername = '女性'; } else { $error = 1; } } else { $error = 1; } if (isset($_post['age'])) { $age = $_post['age']; if(ctype_digit('age')) { if($age < 1 || $age > 5) { $error = 1; } } else { $error = 1; } } else { $error = 1; } if (isset($_post['hobby'])) { $hobby = $_post['hobby']; if(is_array($hobby)){ foreach ($hobby as $value) { if($value < 1|| $value >5){ $error = 1; } } } else { $error = 1; } } if ($error == 0) { echo '<dl class="clearfix">'; echo '<dt>性別は?</dt><dd>' . $gendername . '</dd>'; if($age != 5) { echo '<dt>年齢は?</dt><dd>' . $age . '0代</dd>'; }else{ echo '<dt>年齢は?</dt><dd>50代以上</dd>'; } echo '<dt>趣味は?</dt>'; echo '<dd>'; foreach ($hpbby as $value) { switch ($value) { case 1: echo '音楽鑑賞<br />'; break; case 2: echo '映画鑑賞<br />'; break; case 3: echo 'ドライブ<br />'; break; case 4: echo '旅行<br />'; break; case 5: echo 'その他<br />'; break; } } echo '</dd>'; $textfile = '/Applications/log/log.taxt'; $fp = fopen($textfile, 'r+b'); if(!fp) { exit('ファイルがないか異常があります'); } if(!flook($fp,lock_EX)){ exit('ファイルをロックできませんでした'); } while(!feof($fp)){ $writebuffer[] = trim(fgets($fp)); } if($gender == 1) $writebuffer[0]++; if($gender == 2) $writebuffer[1]++; $writebuffer[$age + 1]++; foreach ($hobby as $key => $value) { $writebuffer[$key +6]++; } $writebuffer[12]++; rewind($fp); foreach ($writebuffer as $value) { fwrite($fp, $value . "¥n"); } fclse($fp); echo '<dl>'; echo '<p class="app_msg">以上の内容を保存しました!</p>'; echo '<p class="app_msg"><a href="question3.php">集計結果を見る</a></p>'; }else{ echo '<p class="app_msg">'; echo '戻ってアンケートの項目全てにお答えください。'; echo '</p>'; } } ?> <dl class="clearfix"></dl> <p class="app_msg">以下の内容を保存しました!</p> <p class="app_msg"><a href="qustion3.php">集計結果を見る</a></p> </div> <p class="copy"> &copy; 2010 PHP for web designer. ALL rights reserved. </p>
</div> </body> </html>

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

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

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

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

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

m.ts10806

2019/02/03 13:11

コードはマークダウンのcode機能を利用してご提示ください
m.ts10806

2019/02/03 13:12

>データがpostされません。 どこで確認されましたか?受けとる処理がどこにも書かれていないように見受けられます
m.ts10806

2019/02/03 13:22

(2回目です)コードはマークダウンのcode機能を利用してご提示ください。 わからなければ、コード部分を選択して<code>ボタンを押してください。 ファイルが違うならコードブロックはわけてくださいね
退会済みユーザー

退会済みユーザー

2019/02/03 13:36 編集

そもそも送信用のあれがないけどな とおもったらあったか
m.ts10806

2019/02/03 13:39

たぶん本件とは関係ないですけど「/Applications/MAMP/htdocs」はそもそもDocumentRootのはずなので書かなくてもいいはず。(設定どうされているか知らないですが、そもそもCSSファイル名書いてないので意味が分からない記述がちらほら)
guest

回答1

0

ベストアンサー

HTMLタグが間違えているようですね。

誤) <from action="question2.php" method="post">
正) <form action="question2.php" method="post">

投稿2019/02/03 23:44

SQLinjection

総合スコア36

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問