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

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

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

phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

PHP

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

解決済

一言掲示板に入力された値をデータベースで管理する方法について(解決済み)

newyee
newyee

総合スコア213

phpMyAdmin

phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

PHP

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

1回答

0リアクション

1クリップ

266閲覧

投稿2017/07/13 08:38

編集2017/07/13 09:02

こちらの問題なのですが、自分でエラーを修正することができ、問題を解決することができました。
単純なテーブル名のミスでした。。。
お騒がせしました。

一言掲示板にて、利用者の過去の発言内容をデータベースに格納し表示するプログラムを作っているのですが、エラーが出てしまってうまくいきません...
実際に自分が作成したコードはこちらです。

PHP

<?php date_default_timezone_set('Asia/Tokyo'); $date = date("Y-m-d H:i:s"); $errors = array(); $host = 'localhost'; $db_username = 'newyee'; $passwd = ''; $dbname = 'c9'; $link = mysqli_connect($host,$db_username,$passwd,$dbname); if($link !== FALSE){ mysqli_set_charset($link, 'utf8'); if ($_SERVER['REQUEST_METHOD'] === 'POST') { if(isset($_POST['user_name']) === TRUE){ $user_name = trim(mb_convert_kana($_POST['user_name'],"s",'UTF-8')); } if(isset($_POST['user_comment']) === TRUE){ $user_comment = trim(mb_convert_kana($_POST['user_comment'],"s",'UTF-8')); } if(mb_strlen($user_name) > 20){ $errors[] = '名前は20文字以内で入力してください'; }elseif(mb_strlen($user_name) === 0){ $errors[] = '名前を入力してください'; } if(mb_strlen($user_comment) > 100){ $errors = 'ひとことは100文字以内で入力してください'; }elseif(mb_strlen($user_comment) === 0){ $errors[] = 'ひとことを入力してください'; } } if(empty($errors) === TRUE){ $query = 'INSERT INTO Bulletin_bord(user_name,user_comment,date) VALUES(\'' . $user_name . '\',\'' . $user_comment . '\',\'' . $date . '\')'; $result = mysqli_query($link,$query); if($result === FALSE){ $errors[] = '登録に失敗しました'; } } $data = array(); $query = 'SELECT user_name,user_comment,date FROM Bulletin_bord'; $result = mysqli_query($link,$query); while($row = mysqli_fetch_array($result)){ $data[] = $row; } } ?> <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <h1>一言掲示板</h1> <form method="post"> <p>名前 : <input type="text" name="user_name"> ひとこと : <input type="text" name="user_comment"> <input type="submit" value="送信"> </p> </form> <?php foreach ($errors as $value){ ?> <p><?php echo htmlspecialchars($value, ENT_QUOTES, 'UTF-8'); ?></p> <?php } ?> <ul> <?php foreach ($data as $value) { ?> <li> <?php echo htmlspecialchars($value['user_name'],ENT_QUOTES,'UTF-8'); ?> <?php echo htmlspecialchars($value['user_comment'],ENT_QUOTES,'UTF-8'); ?> <?php echo htmlspecialchars($value['date'],ENT_QUOTES,'UTF-8'); ?> </li> <?php } ?> </ul> </body> </html>

データベースはphpmyadminを使っております。

以下の画像は実際に自分が作成した、テーブルになります。
テーブル名はBulletin_bordです。

イメージ説明

エラーの内容は以下の通りです。
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /home/ubuntu/workspace/review/lesson16/practice_bbs_db_intermediate.php on line 46 Call Stack: 0.0032 236672 1. {main}() /home/ubuntu/workspace/review/lesson16/practice_bbs_db_intermediate.php:0 0.0168 246696 2. mysqli_fetch_array() /home/ubuntu/workspace/review/lesson16/practice_bbs_db_intermediate.php:46

どなたか分かる方いましたら、ご教授願います...

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

_Victorique__

2017/07/13 08:57

タイトルは元に戻しておきましょう。後の人が見て分かりません。
newyee

2017/07/13 08:58

了解しました。ご指摘ありがとうございます!

まだ回答がついていません

会員登録して回答してみよう

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

phpMyAdmin

phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

PHP

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