Newer
Older
hello-programmer-world / public / sample / sql / submit.php
<?php

require_once './connect.php';

if ($_SERVER["REQUEST_METHOD"] === "POST") {
    define('DB_HOST', "db");
    define("DB_PORT", "3306");
    define('DB_USER', "user");
    define('DB_PASSWORD', "password");
    define('DB_NAME', "trainee_db");

    define('DSN', "mysql:host=" . DB_HOST . ";port=" . DB_PORT . ";dbname=" . DB_NAME . ";charset=utf8mb4");

    $dbh = new PDO(DSN, DB_USER, DB_PASSWORD);

    // エラーが発生した場合に例外をスローする設定
    $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $insert_query_template = "INSERT INTO applications (name, address, product) VALUES (:name, :address, :product)";
    $stmt = $dbh->prepare($insert_query_template);

    $stmt->bindParam(':name', $_POST["name"], PDO::PARAM_STR);
    $stmt->bindParam(':address', $_POST["address"], PDO::PARAM_STR);
    $stmt->bindParam(':product', $_POST["product"], PDO::PARAM_STR);

    $stmt->execute();
}

?>
<!DOCTYPE html>
<html lang="ja">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>応募完了</title>
  <link rel="stylesheet" href="./styles.css">
</head>

<body>
  <?php if ($_SERVER["REQUEST_METHOD"] === "POST"): ?>
  <div class="container">
    <div>応募ありがとうございました!</div>

    <table class="bordered-table">
      <tr>
        <th>お名前</th>
        <td><?php echo $_POST["name"]; ?></td>
      </tr>
      <tr>
        <th>住所</th>
        <td><?php echo $_POST["address"]; ?></td>
      </tr>
      <tr>
        <td>応募する商品</td>
        <td><?php echo $_POST["product"]; ?></td>
      </tr>
    </table>

    <a href="./form.html">応募ページに戻る</a>
  </div>

  <?php else: ?>
  <div class="container">
    <div>このページに直接アクセスすることは禁止されています。</div>
    <a href="./form.html">応募ページに戻る</a>
  </div>
  <?php endif; ?>
</body>

</html>