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

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

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

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

phpMyAdmin

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

PHP

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

Q&A

解決済

3回答

3832閲覧

phpmyadminで登録した画像ファイル名を表示させたい

sori-

総合スコア37

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

phpMyAdmin

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

PHP

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

0グッド

0クリップ

投稿2016/12/06 05:45

phpmyadminで以下のようなテーブルを作成し、imgカラムにある画像ファイルを表示させたいです。当方php初心者です。
id|name|img
1 |a |.jpg
2 |b |
.png
3 |c |****.jpg
idはオートインクリメントを設定したint型、nameとimgはvarchar型です。

index.phpやlogin.phpなどをフォルダに格納しており、その中にimgフォルダを作成し、上記の名前のjpgやpngファイルをいれています。

php

1<?php 2//データベースに接続 3$con = mysql_connect("localhost", "root",""); 4 5//データベースを選択 6mysql_select_db("db", $con); 7 8//SQL文をセット productsは最初に記載したテーブルの名前です 9$quryset = mysql_query("SELECT * FROM products;"); 10 11echo "<table border='1'>"; 12echo "<tr>"; 13echo "<td>ナンバー"; 14echo "</td>"; 15echo "<td>名前"; 16echo "</td>"; 17echo "<td>商品画像"; 18echo "</td>"; 19echo "</tr>"; 20 21while ($data = mysql_fetch_array($quryset)){ 22 echo "<TR>"; 23 echo "<TD>" . $data[0]; 24 echo "</TD>"; 25 26 echo "<TD>" . $data[1]; 27 echo "</TD>"; 28 29 echo "<TD>" . $data[2]; 30 echo "</TD>"; 31 echo "</TR>"; 32} 33echo "</table>"; 34?>

このまま実行すると$data[2];には画像のファイル名が記載されます(****.png等)
解決するために、以下を試しました。
SQL文セット後、
header('Content-Type: img/jpg');
header('Content-Type: img/png');
こちらでも実行できずエラーになります。
phpmyadminにimgカラムの型を変えて画像を直接アップロードするやり方などの文献は結構見かけましたが、画像のパス(ファイル名?)を指定してフォルダから参照するやりかたはあまりみつけれませんでした。
自分の探し方の問題ではありますが、あまり自分のコードと条件が一致したものがなく、理解ができませんでした。
imgフォルダに格納されているフォルダをファイル名で指定すれば画像として参照される方法がご存知の方がいらっしゃれば教えていただきたいです。
不明点などあれば追記いたしますので、どうぞ宜しくお願い致します。

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

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

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

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

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

guest

回答3

0

PHP

1echo "<TD>" . $data[2]; 2echo "</TD>";

PHP

1echo "<TD><img src=\"" . $data[2] . "\">"; 2echo "</TD>";

$data[2]に画像パスの文字列が入っているのであれば、画像タグのパス指定部分(src="")にその文字列が入るようにすると良いでしょう

投稿2016/12/06 06:28

hitsujimeeee

総合スコア486

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

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

sori-

2016/12/06 06:37

ご回答いただきありがとうございます! 教えていただいた通りで実行できました! hitsujimeeeeさんよりもnfnofaceさんが少し投稿がはやかったため、ベストアンサーはnfnofaceさんに差し上げます。 ご回答いただいたのにすみません。本当に助かり、ありがとうございました!
guest

0

ベストアンサー

ブラウザでアクセスしファイル名が表示されていることを確認されているということですよね。

それでしたら、ファイル名が格納されているカラムを出力する際に、
<img>タグを使うとよろしいのではないかと思われます。

php

1// 該当部分だけ抜粋します 2 echo '<TD><img src="img/', $data[2], '"></TD>';

投稿2016/12/06 06:21

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

sori-

2016/12/06 06:36

ご回答いただきありがとうございます! 教えていただいたとおり実行したらうまくいきました。 htmlタグで画像出力の指定をしてあげないといけないんですね。 本当に助かりました、ありがとうございました。
guest

0

mysql_query は非推奨なので、今から勉強されるのであれば mysqli か PDO でされることをお勧めします。

【PHP: mysql_query - Manual】
http://php.net/manual/ja/function.mysql-query.php

警告 この拡張モジュールは PHP 5.5.0 で非推奨になり、PHP 7.0.0 で削除されました。 MySQLi あるいは PDO_MySQL を使うべきです。


【PHPでデータベースに接続するときのまとめ - Qiita】
http://qiita.com/mpyw/items/b00b72c5c95aac573b71

【[PHP] mysqli使い方まとめ(MySQL接続~SELECT実行まで) - Qiita】
http://qiita.com/yasumodev/items/bd2ba476f31804d527d3

投稿2016/12/06 18:55

kei344

総合スコア69407

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

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

sori-

2016/12/07 13:50

ご丁寧に説明いただきありがとうございます! 7.0.0でもう削除されているんですね。5.5.0使ってたので気づきませんでした。 修正します、ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問