質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

Q&A

解決済

4回答

1388閲覧

データベースのテーブルの選択について

teityann1225

総合スコア158

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

0グッド

0クリップ

投稿2017/05/01 13:35

###エラー
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>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

gallu

2017/05/01 14:01

「ページが動作しなくなる」だと、状況がわかりにくいので。どんなエラーメッセージが出たか(或いは真っ白になったか)を記述されると、よいと思います。ちなみに「真っ白になった」場合は、適切に設定をして「エラーが出力されるようにして」エラーメッセージを出すようにすると、答えが出てきやすいと思います。
teityann1225

2017/05/01 14:12

このページは動作していません。○○では現在このリクエストを処理できません。 HTTP ERROR 500
guest

回答4

0

ありがとうございました❗
出来ました❗
記述の仕方を間違えていたようです。

投稿2017/05/02 05:02

teityann1225

総合スコア158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

DSN.phの書き方を修正したら治りましたが、今度はこちらのエラーです。
1146Table '○○○.name' doesn't exist

投稿2017/05/01 14:25

teityann1225

総合スコア158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Z-TALBO

2017/05/01 22:47

それは、テーブルがないからだと思いますよ。
guest

0

nameは繋がる
memberは繋がらない

nameテーブルは作ってない
memberテーブルは作っている

show tablesとかで確認されてみたほうがいいのかもしれません。
あと、dbname自体が違うとかってオチも考えられますが、?、

投稿2017/05/01 14:15

Z-TALBO

総合スコア525

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

member テーブルが存在しない、ってオチのような気もしますが、
データベースは何か?そのバージョンは?エラーメッセーがあればその内容をそのまま表示されては?

投稿2017/05/01 14:01

編集2017/05/01 14:03
Orlofsky

総合スコア16415

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

teityann1225

2017/05/01 14:07

設定など確認してみます。 エラーは「このページは動作していません。」となります。 nameテーブルは作っていませんがmemberテーブルは作ってあります。
Orlofsky

2017/05/01 14:11

きちんと回答してください。 >データベースは何か?そのバージョンは?
teityann1225

2017/05/01 14:14

データベースはサクラのレンタルサーバーでバージョンは、MySQL 5.5です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問