前提・実現したいこと
データベースからデータを持ってきてhtmlのtableにぶち込みたい
が,なぜか文字が表示されない…
該当のソースコード
php
1<!DOCTYPE html> 2<html lang="ja"> 3 4<head> 5 <meta charset="UTF-8"> 6 <link rel="stylesheet" href="../css/admin.css"> 7 <title>-ログイン-</title> 8</head> 9<body> 10 11 <input type="button" onclick="history.back()" value="ログアウト"> 12 13 <p>電源状況を見る <span id="span3"></span></p> 14 15 <form action="login_success.php" method="POST"> 16 <select name="machine" id="machine"> 17 <option value="log" selected>1号</option> 18 <option value="image">2号</option> 19 <option value="3">3号</option> 20 <option value="4">4号</option> 21 </select> 22 <input type="submit" name="battery" value="見る" onclick="clickBtn()"> 23 </form> 24 25 <?php 26 if(isset($_POST["battery"])) { 27 if($_POST["machine"] == "log"){ 28 29 //データベース接続 30 $dsn = 'mysql:host=localhost;dbname=○○;charset=utf8'; 31 $db_user = '○○'; 32 $db_pass = '○○'; 33 34 try { 35 $pdo = new PDO($dsn, $db_user, $db_pass); 36 } catch (PDOException $e) { 37 exit('データベース接続失敗。' . $e->getMessage()); 38 } 39 40 $date = []; 41 $time = []; 42 $capacity = []; 43 $place = []; 44 45 $query = "select * from log order by date desc"; 46 $stmt = $pdo->query($query); 47 $rec = $stmt->fetchAll(PDO::FETCH_ASSOC); 48 49 foreach ($rec as $row){ 50 $date[] = $row['date']; 51 $time[] = $row['time']; 52 $capacity[] = $capacity['capacity']; 53 $place[] = $place['place']; 54 } 55 56 ?> 57 <table border="1"> 58 <!--表の各項目名--> 59 <tr><th>日付</th><th>時間</th><th>電力</th><th>場所</th></tr> 60 <!--表の中身--> 61 <?php 62 for($i = 0; $i<count($date); $i++){ 63 echo "<tr>"; 64 echo "<td>$date[$i]</td>"; 65 echo "<td>$time[$i]</td>"; 66 echo "<td>$capacity[$i]</td>"; 67 echo "<td>$place[$i]</td>"; 68 echo "</tr>"; 69 } 70 ?> 71 </table> 72 73 <?php 74 75 echo "do-mo"; 76 77 }else if($_POST["machine"] == "image"){ 78 echo "hoge"; 79 }else{ 80 echo "hogehoge"; 81 } 82 } 83 ?> 84 85</body> 86</html> 87
試したこと
前回の質問したvalue値を使うところはうまくいっています.
本来,データベース内には
|date|time|capacity|place|
|2021-12-09|16:02:50|67.2%|4gpi|
となっていますが(見づらくてすみません表の書き方わからんかった…)
capacityとplaceだけ表示されないんです
どうしたら表示されますか
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/13 03:29
2021/12/13 08:05