PHP全くの初心者で本2冊をもとに2週間前にはじめました。
至らぬ点あろうかと思いますが、お願いします。
PHPでカテゴリーとしてMYsqlにプルダウンメニューで選択させた4つのデータを登録。
日本語データを1~4の数字に置き換えて登録。
↓
一覧表に何のカテゴリーかを表示させたい。
数字は下記のforeach ($result as $row)で表示できるが、
例えば「いちばん、にばん、さんばん、よんばん」といった日本語に
置き換えて表示させたい。
php
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>データ一覧</title> </head> <body> <h1>2018年 データ一覧</h1> <a href="form.html">データ新規登録</a> <?php require_once 'db_config.php'; try { $dbh = new PDO('mysql:host=localhost;dbname=data_db1;charset=utf8', $user, $pass); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "SELECT * FROM table_data"; $stmt = $dbh->query($sql); $result = $stmt->fetchAll(PDO::FETCH_ASSOC); echo "<table>\n"; echo "<tr>\n"; echo "<th>月</th><th>日</th><th>カテゴリ</th>\n"; echo "</tr>\n"; foreach ($result as $row) { echo "<tr>\n"; echo "<td>" . htmlspecialchars($row['month'],ENT_QUOTES,'UTF-8') . "</td>\n"; echo "<td>" . htmlspecialchars($row['day'],ENT_QUOTES,'UTF-8') . "</td>\n"; echo "<td>" . htmlspecialchars($row['category'],ENT_QUOTES,'UTF-8') . "</td>\n"; echo "<td>\n"; echo "|<a href=edit.php?id=" . htmlspecialchars($row['id'],ENT_QUOTES,'UTF-8') . ">変更</a>\n"; echo "|<a href=delete.php?id=" . htmlspecialchars($row['id'],ENT_QUOTES,'UTF-8') . ">削除</a>\n"; echo "</td>\n"; echo "</tr>\n"; } echo "</table>\n"; $dbh = null; } catch (PDOException $e) { echo "エラー発生: " . htmlspecialchars($e->getMessage(), ENT_QUOTES, 'UTF-8') . "<br>"; die(); } ?>
下記のようなif文を使うのでしょうか?
php
if ($_POST['category'] === '1') echo "いちばん"; if ($_POST['category'] === '2') echo "にばん"; if ($_POST['category'] === '3') echo "さんばん"; if ($_POST['category'] === '4') echo "よんばん";
$_POSTを$rowに置き換えて挿入したり、挿入場所も変えたりしましたが、
動作しません。根本的に間違えているのでしょうか?
ぜひご教示お願いします。
まだ回答がついていません
会員登録して回答してみよう