###エラー
nameテーブルではなくmemberテーブルに接続したいですが、
PHP
1$sql = "SELECT * FROM name";
を
PHP
1$sql = "SELECT * FROM member";
にするとページが動作しなくなる。
よろしくお願いします。
###コード
変更前
PHP
1<?php 2 3header("Content-type: text/html; charset=utf-8"); 4 5require_once("DSN.php"); 6$mysqli = db_connect(); 7 8$sql = "SELECT * FROM name"; 9 10$result = $mysqli -> query($sql); 11 12//クエリ失敗 13if(!$result) { 14 echo $mysqli->error; 15 exit(); 16} 17 18//連想配列で取得 19while($row = $result->fetch_array(MYSQLI_ASSOC)){ 20 $rows[] = $row; 21} 22 23//結果セットを解放 24$result->free(); 25 26// データベース切断 27$mysqli->close(); 28 29?> 30 31<!DOCTYPE html> 32<html> 33<head> 34<title>name一覧</title> 35</head> 36<body> 37<h1>name一覧</h1> 38 39<table border='1'> 40<tr><td>id</td><td>member</td><td>名前を変更する</td></tr> 41 42<?php 43foreach($rows as $row){ 44 ?> 45 46<tr> 47 <td><?=$row['id']?></td> 48 <td><?=htmlspecialchars($row['name'], ENT_QUOTES, 'UTF-8')?></td> 49 <td> 50 <form action="update2.php" method="post"> 51 <input type="submit" value="変更する"> 52 <input type="hidden" name="id" value="<?=$row['id']?>"> 53 </form> 54 </td> 55</tr> 56 57 <?php 58 } 59 ?> 60 61</table> 62
変更後
<?php header("Content-type: text/html; charset=utf-8"); require_once("DSN.php"); $mysqli = db_connect(); $sql = "SELECT * FROM member"; $result = $mysqli -> query($sql); //クエリ失敗 if(!$result) { echo $mysqli->error; exit(); } //連想配列で取得 while($row = $result->fetch_array(MYSQLI_ASSOC)){ $rows[] = $row; } //結果セットを解放 $result->free(); // データベース切断 $mysqli->close(); ?> <!DOCTYPE html> <html> <head> <title>name一覧</title> </head> <body> <h1>name一覧</h1> <table border='1'> <tr><td>id</td><td>member</td><td>名前を変更する</td></tr> <?php foreach($rows as $row){ ?> <tr> <td><?=$row['id']?></td> <td><?=htmlspecialchars($row['name'], ENT_QUOTES, 'UTF-8')?></td> <td> <form action="update2.php" method="post"> <input type="submit" value="変更する"> <input type="hidden" name="id" value="<?=$row['id']?>"> </form> </td> </tr> <?php } ?> </table>
回答4件
あなたの回答
tips
プレビュー