-4

だから私は次のコードを持っています

$query=mysql_query("SELECT * FROM `phones` JOIN manufacturer USING (ManufacturerID) JOIN operatingsystem USING (OSID) WHERE PhoneID=$id");
$row=mysql_fetch_object($query);
echo mysql_error();

while($row=mysql_fetch_array($result))
{ ?>
<div class="phones">
<?php
echo "<img src=\"images/phones/".$row['LargeImg']."\"/>";
echo "<h2>";
echo "$row->Name $row->Model";
echo "</h2>";
echo "<p>";
echo "<ul>";
echo "<li>Running $row->OSName</li>";
echo "<br />";
echo "<li>$row->ScreenSize Display</li>";
echo "<br />";
echo "<li>$row->StorageSize of Storage</li>";
echo "</p>";
echo "</ul>";
?>
</div>
<?php
}
mysql_close($con);
?>

エラーが発生します 通知:未定義の変数:43行目のphone-details.phpになります警告:mysql_fetch_array()は、パラメーター1がリソースであり、43行目のphone-details.phpでnullが指定されていることを想定しています。

私がやりたいのは、製品の詳細の横に画像を表示することです(製品の詳細は以前は機能していましたが、画像を機能させようとしましたが、壊れました)。ファイル名はLargeImgという名前のフィールドに保存され、画像ファイル自体はimages/phonesフォルダーに保存されます。エラーがなくなり、データベース内の各レコードの画像が表示されるようにするには、どうすればよいですか?コードは単純であるほど良いです。

ありがとう。

4

2 に答える 2

0
$row=mysql_fetch_object($query);
echo mysql_error();

while($row=mysql_fetch_array($result))

mysql_* 関数の使用についてのスピーチに関係なく。$result が定義されていません。それは何も保持しません。通常、人々は次のようなことをしていました。

$result = mysql_query("QUERY");
while($row=mysql_fetch_array($result)){
//do stuff
}

あなたはあなたの機能を混同しています。また、mysql_* 関数は推奨されていないため、使用しないでください。:)

于 2013-02-06T00:51:10.357 に答える
0

$queryのパラメータとして変数を使用しますmysql_fetch_array。パラメータは mysql_query 参照でなければなりません。

$resultここでは決して定義されません..

于 2013-02-06T00:25:41.133 に答える