0

データベースに画像を保存するのは非常に悪い考えだと聞いたので、画像のパスを保存することにしました。ここでの問題は、画像を表示する方法が見つからないことです。私はこれを試しました

<?php
$con = mysql_connect("localhost","root","mypassword");
mysql_query('SET NAMES UTF8');


if (!$con)
{
    echo "problem with connection" .mysql_error();
}
?>
<?php
mysql_select_db("eshop",$con);
$result = mysql_query("SELECT * FROM products", $con);
    $row = mysql_fetch_array($result);
while ($row)
 {   
$myimage = '<img src="<?php echo $row[\'image\']; ?>" />';
echo $row['title'] . " " . "<br />" . $myimage . $row['category'];
$row = mysql_fetch_array($result);
 }
 mysql_close($con);
?>

および他の同様の方法で結果はありません。誰かがこれについての手がかりを持っていますか?

4

2 に答える 2

3

$row設定する前、またはmysql配列を呼び出す前に呼び出しようとしています。

 $row = mysql_fetch_array($result);
 $myimage = '<img src="<?php echo $row[\'image\']; ?>" />'
 echo $row['title'] . " " . "<br />" . $myimage . $row['category'];

また、「image」を囲む一重引用符をエスケープする必要があります。そうしないと、構文エラーが発生します。

于 2012-05-27T18:04:51.083 に答える
1

なぜそこにphpの開始タグと終了タグがあるのですか?あなたはただすることができます:

$result = mysql_query('SELECT * FROM products',$con);
while($row = mysql_fetch_array($result)){
$myimage = '<img src="'.$row['image'].'" />';
echo $row['title']. ' ' . '<br/>' . $myimage . $row['category'];
}
mysql_close($con);

mysql_ *関数は、次のバージョンまたはそれ以降のバージョンで非推奨になることに注意してください。代わりにmysqliまたはPDOを使用する必要があります。また、他の変数定義内に変数を含める予定がない場合は、phpが二重引用符内の文字列を解析するため、一重引用符を使用する必要があります。必要なときに一重引用符を使用すると、少し速くなります。

一重引用符と二重引用符の意味は、http: //codepad.org/UW5DO2fTで確認できます。

于 2012-05-27T19:11:50.400 に答える