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

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

新規登録して質問してみよう
ただいま回答率
85.50%
バイナリ

バイナリは、「0」と「1」だけで表現されている2進数のデータ形式。または、テキスト以外の情報でデータが記述されているファイルを指します。コンピューター内の処理は全て2進数で表記されています。

PHP

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

Q&A

解決済

1回答

674閲覧

PHPMYSQLからの複数写真表示

GPE46232209

総合スコア14

バイナリ

バイナリは、「0」と「1」だけで表現されている2進数のデータ形式。または、テキスト以外の情報でデータが記述されているファイルを指します。コンピューター内の処理は全て2進数で表記されています。

PHP

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

0グッド

0クリップ

投稿2021/08/11 11:07

編集2021/08/12 08:00

前提・実現したいこと
写真を複数保存するテーブルとその写真についてのコメントを保存するテーブルを内部結合しているソースコードなのですが、
trouble_pic.PHOTO=>バイナリデータ
trouble_pic.PHOTO_TYPE=>写真のデータ型について(jpeg, gif , pngのいづれか)
で目標が各テーブルにIDがあり、それが共通しているカラムを取り出すことで件によって取り出す写真の数を異ならせることがメインにしたいのですが、写真は映らないし、写真のアイコンは出るのですが、すべて同じ数で出てしまうことで困っています。

イメージ説明###
イメージ説明

該当のソースコード

PHP

1<?php 2//ここの表記で同じ写真が同じ回数すべて出ているためそこの対処、 3 4$photo = $db->query('SELECT trouble_pic.PHOTO , trouble_pic.PHOTO_TYPE FROM trouble JOIN trouble_pic ON trouble.ID = trouble_pic.ID '); 5while ($recording = $photo ->fetch(PDO::FETCH_ASSOC)) { 6 if ($recording["PHOTO_TYPE"] == "jpeg" || $recording["PHOTO_TYPE"] == "png" || $recording["PHOTO_TYPE"] == "gif") { 7 if($recording["PHOTO_TYPE"] == "jpeg"){ 8 $type = "jpeg"; 9 } 10 elseif ($recording["PHOTO_TYPE"] == "png") { 11 $type ="png"; 12 }elseif ($recording["PHOTO_TYPE"] == "gif") { 13 $type ="gif"; 14 } 15 16 echo '<img src="data:image/'.$type.';'.base64_encode($recording["PHOTO"]).'">'; 17 18 echo "<br/><br/>"; 19 } 20}?>

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

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

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

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

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

m.ts10806

2021/08/11 23:44

文字説明だけでは限界もあるので、現状の出力の画面キャプチャ提示されては。 このコードだけでは他者は再現確認できませんしね。
GPE46232209

2021/08/12 08:01

なるほどです。追加しました。もしお時間があればご指摘お願いします。
guest

回答1

0

ベストアンサー

写真は映らないし

単純な間違いであれば。

echo '<img src="data:image/'.$type.';'.base64_encode($recording["PHOTO"]).'">';

echo '<img src="data:image/'.$type.';base64,'.base64_encode($recording["PHOTO"]).'">';

すべて同じ数で出てしまう

提示されているソースで数を制御するようなコードはありませんが、どのような結果になる想定ですか?

投稿2021/08/11 16:30

tabuu

総合スコア2449

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

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

GPE46232209

2021/08/12 08:46

ご指摘の通り、写真の表示で:base64の抜けていたため写真の表示ができていませんでした。 そこを訂正したら、画像の表示はできましたが。もう一つやりたいこととして、INSERTの時に人によって写真の挿入数が異なるため、取り出すときに写真の数がIDがあっていることで表示をさせたいのですが、そこがうまくできないです!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問