PHP,MySQLを最近勉強しはじめ、
入門書籍( PHP 7+MySQL 入門ノート 2016/7/1 大重 美幸 (著)の13章)を参考に自分の作ったテーブルからデータを読み出すプログラムを作ってみたのですが、値を取り出して行に表示する所が実行出来ませんでした。
echo "<th>", "ID", "</th>";はブラウザに反映されるのですが、
echo "<td>", es($row['id']), "</td>"; が表示されません。
es($row['id']) の部分がphpMyAdminのテーブルから値を取出していることは分かるのですが、es($rowの部分が何をしているのかが、ネットで調べてもよくわかりませんでした。
色々やってみたのですが、表示されず、、
助言を頂けると助かります。
html
1 2<!DOCTYPE html> 3<html lang="ja"> 4<head> 5<title>PDOでdbに接続</title> 6</head> 7<body> 8<div> 9 <?php 10 // データベースユーザ 11 $user = 'test'; 12 $password = 'test'; 13 // 利用するデータベース 14 $dbName = 'test'; 15 // MySQLサーバ 16 $host = 'test.test.test'; 17 // MySQLのDSN文字列 18 $dsn = "mysql:host={$host};dbname={$dbName};charset=utf8"; 19 20 //MySQLdbに接続 21 try { 22 $pdo = new PDO($dsn, $user, $password); 23 $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); 24 $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 25 echo "db{$dbName}に接続しました。"; 26 // SQL文(全レコード) 27 $sql ="EXPLAIN SELECT * FROM test01"; 28 // プリペアドステートメントを作る 29 $stm = $pdo->prepare($sql); 30 // SQL文の実行 31 $stm->execute(); 32 // 結果取得 33 $result = $stm->fetchAll(PDO::FETCH_ASSOC); 34 // テーブルのタイトル行 35 echo "<table>"; 36 37 echo "<thead><tr>"; 38 echo "<th>", "ID", "</th>"; 39 echo "<th>", "名前", "</th>"; 40 echo "<th>", "場所", "</th>"; 41 echo "<th>", "緯度", "</th>"; 42 echo "<th>", "経度", "</th>"; 43 echo "</tr></thead>"; 44 45 // 値を取り出して行に表示する 46 echo "<tbody>"; 47 foreach ($result as $row){ 48 // 1行ずつテーブルに入れる 49 echo "<tr>"; 50 echo "<td>", es($row['id']), "</td>"; 51 echo "<td>", es($row['name']), "</td>"; 52 echo "<td>", es($row['place']), "</td>"; 53 echo "<td>", es($row['latitude']), "</td>"; 54 echo "<td>", es($row['lognitude']), "</td>"; 55 echo "</tr>"; 56 } 57 echo "</tbody>"; 58 echo "</table>"; 59 60 61 // 接続を解除する 62 /*$pdo = NULL;*/ 63 } catch (Exception $e) { 64 echo '<span class="error">エラーがありました。</span><br>'; 65 echo $e->getMessage(); 66 exit(); 67 } 68 ?> 69</div> 70</body> 71</html>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/09 17:50