3

いつものように、私は自分の PHP で問題を抱えています :( 私はまだこれに本当に慣れていないので、最終的には簡単になることを願っています...

これは私に本当の頭痛の種です。誰かが助けてくれることを願っています。

データベース列から一連の画像を取得しようとしています。画像が存在する場合は表示されます。存在しない場合は、デフォルトの「画像なし」画像が同じ形式で表示されます。

私がこれを完全に正しく行っているかどうかさえわかりません。データベースの列/行に複数の値を含めることはできますか? これは配列ですか?

これまでの私のコードは次のとおりです...

$images_array = "SELECT images FROM properties WHERE property = '".$property."' "; // set images query 
$images = mysql_query($images_array); // run images_array query save as images
$images_count = mysql_num_rows($images);
if ($images_count > 0) {
while ($image = mysql_fetch_array($images)) {
echo'<div id="property_images">
<div id="property_main_image"><img alt="Property Image" src="./images/properties/'.$image['images'].'" /></div>
<div id="property_sub_image"><img alt="Property Image" src="./images/properties/'.$image['images'].'" /></div>
<div id="property_sub_image"><img alt="Property Image" src="./images/properties/'.$image['images'].'" /></div>
</div>';
}
} else {
echo'<div id="property_images">
<div id="property_main_image"><img alt="No Property Image" src="./images/properties/no_image" /></div>
<div id="property_sub_image"><img alt="No Property Image" src="./images/properties/no_image" /></div>
<div id="property_sub_image"><img alt="No Property Image" src="./images/properties/no_image" /></div>
</div>';
}

画像がデータベースに存在する場合は正しく表示されますが、そうでない場合は alt="Property Image" が表示されます。コードが常に $images を TRUE と見なしていると思うようになったのはどれですか... ??

複数のファイル名を保存することで、この方法で複数の画像を表示できますか?

助けてくれてありがとう:)

私のデータベースの構造を要求したように...

| properties
| ID | address | area | postcode | phone | mobile | tenancy | type | available | deposit | rent | description | bedrooms | bathrooms | communal | kitchens | parking | garden | broadband | property | vacancy | images |
4

2 に答える 2

1
define('NO_IMAGE', '/path/to/no/img'); // path to "noimage" image
$images_array = "SELECT CASE WHEN images IS NULL or images = '' THEN '".NO_IMAGE."' ELSE images END FROM properties WHERE property = '".$property."' ";

images フィールド値が null または空の文字列の場合、images 値 = NO_IMAGE 値、それ以外の場合は使用可能な値。

于 2013-05-31T15:48:02.943 に答える