PHP学習アウトプット#2~問い合わせフォーム基礎~
PHPを極めるため、勉強したことを随時アウトプットしていきたいと思います。
学習ツール:Progate(PHPⅠコース)
はじめに
基礎的な問い合わせフォームの作成を行います。
開発環境:
・VSCode
・XAMMP
PHPファイルをブラウザで開くには、実行環境の準備が必要。
今回はXAMPPを使用。
C:\xampp\htdocsに「php-study」フォルダを作成し、
以下のindex.phpとsent.phpを作成した。
※htdocs:ドキュメントルート。この中にWEBサイトで公開するファイルを設置する。
成果物
index.php
http://localhost/php-study/を開くと、問い合わせフォームが表示される。
sent.php
上記の通り、index.phpの問い合わせフォームを入力し、送信ボタンを押すと以下のページが表示される。
コード
index.php
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>PHP勉強</title>
</head>
<body>
<form method="post" action="sent.php">
名前
<input type="test" name="name">
<br>
年齢
<select name="age">
<option value="未選択">選択してください</option>
<?php
for($i=20; $i<=60; $i++){
echo "<option value='{$i}'>{$i}</option>";
}
?>
</select>
<br>
問い合わせ種類
<?php
$types = array('勉強方法','サイトについて','不具合','その他')
?>
<select name="type">
<option value="未選択">選択してください</option>
<?php
foreach($types as $type){
echo "<option value='{$type}'>{$type}</option>";
}
?>
</select>
<br>
内容
<br>
<textarea name="body"></textarea>
<input type="submit" value="送信">
</form>
</body>
</html>
<form method="post" action="sent.php">で送信ボタン押下後の遷移先を「sent.php」に設定。
年齢の選択肢はfor文を使用して20~60までの値を設定。
問い合わせ種類はforeach文を使用して、配列の値を設定。
methodをpostではなくgetとした場合、遷移後のURLに入力した値が表示される。
sent.php
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>PHP勉強</title>
</head>
<body>
お問い合わせ内容の確認
<br>
■名前:
<?php echo $_POST['name']; ?>
<br>
■年齢:
<?php echo $_POST['age']; ?>
<br>
■問い合わせ種類:
<?php echo $_POST['type']; ?>
<br>
■内容:
<?php echo $_POST['body']; ?>
</body>
</html>
遷移前のページで入力した値を取得するときは、$_POST['name']
getの場合は、$GET['name']で取得する。
この記事が気に入ったらサポートをしてみませんか?