2016-04-10 21 views
0

データベース内のURLを使用してSQLデータベースから画像を表示しようとしています。PHPを使用してSQLデータベースに保存されたURLから画像を表示

私はこのタイプの実装にまだまだ新しいので、私はベストショットをして研究をしようとしていますが、BLOBを使用することや画像を直接データベース)。イメージをファイルシステムに保存したいのは間違いありません。現在、私のコードは、URLのみを(明らかに)表示されますが、私はいくつかのことを試してみました。..

私が試してみました:$イメージを使用してPHP変数$画像に
-Passing $行[「card_image」]と私はスタックオーバーフローで見つけた他のいくつかのソリューションを試しましたが、私は信じています。これらは主にBLOBデータ型で使用されていたため、私が望む出力を生成することもできませんでした(IE

は、ここに私の現在のコードです:

SQL

CREATE TABLE cards (
    card_image VARCHAR(999) 
    ); 

insert into cards (card_image) 
values ('http://localhost/dbztc/wp-content/uploads/2016/04/1.jpg'); 

PHP

// Create connection 
$conn = new mysqli($servername, $username, $password, $db); 

if(!$conn) 
{ 
die("connection failed"); 
} 

//Table 
echo " 
     <table cellpadding=\"0\" cellspacing=\"2\" border=\"0\" width=\"100%\"> 
      <tr bgcolor=\"#666666\"> 
       <td colspan=\"5\" align=\"center\"><b><font color=\"#FFFFFF\">" . $table[0] . "</font></td> 
      </tr> 
      <tr> 
       <td>Image</td> 
       <td>Card Number</td> 
       <td>Card Rarity</td> 
       <td>Card Name</td> 
       <td>Card Type</td> 
       <td>Card Style</td> 
       <td>Card Text</td> 
      </tr>"; 

$sqlquery = "SELECT card_image, card_number, card_rarity, card_title, card_type, card_style, card_text FROM cards"; 
$result = mysqli_query($conn, $sqlquery); 
//$image = $row["card_image"]; 

if (mysqli_num_rows($result) > 0) { 

    // output data of each row 
    while($row = mysqli_fetch_assoc($result)) { 
     echo "<td>" . $row["card_image"] . "</td>" . "<td>" . $row["card_number"]. "</td>" . "<td>" . $row["card_rarity"] . "</td>" . "<td>" . $row["card_title"] . "<td>" . $row["card_type"] . "</td>" . "<td>" . $row["card_style"] . "</td>" . "<td>" . $row["card_text"] . "</td></tr>"; 
    } 
} else { 
    echo "0 results"; 
} 

echo "</table>"; 

mysqli_close($conn); 

答えて

0

の代わりに(私はスペースを節約するためにフィールドを凝縮しています):

<td>" . $row["card_image"] . "</td> 

してみてください。

この時につまずくと、これと同じ問題があることがあり、誰のために
$image = $row["card_image"]; // the image url 

<td><img src='". $image . "'></td> 
+0

コードは機能しますが、リンクを出力するのではなく、何も出力しません。パスは間違いなく良いですが、私はブラウザにリンクを置くと、リンクは私を直接画像に連れて行きます。 –

0

:まず第一に

を、私は、データベースエントリのうち、全体のURLを取り、唯一ファイル名に置き換え。それは今完全に表示さ

// output data of each row 
    while($row = mysqli_fetch_assoc($result)) { 
     echo "<td>" . "<img src ='../images/" . $row["card_image"] . "'>" . "</td>" . "<td>" . $row["card_number"]. "</td>" . "<td>" . $row["card_rarity"] . "</td>" . "<td>" . $row["card_title"] . "<td>" . $row["card_type"] . "</td>" . "<td>" . $row["card_style"] . "</td>" . "<td>" . $row["card_text"] . "</td></tr>"; 
     echo "<br />"; 

その後、私はこのような私のコードを編集しました。メモと同様に、これはローカルに反対するライブサーバー上で実行されたため、おそらく影響を与える可能性があります。わからないが、うまくいけば、これは誰かを助けることができる!

関連する問題