2016-12-15 73 views
1

我基本上是一個手工編寫HTML代碼的設計師,但是當涉及到PHP時,我就是一名黑客。我被要求在PHP/MySQL網站上的產品搜索結果表中添加圖像圖標,這個網站十多年來已經有很多程序員,造成了一堆雜亂無章的代碼。PHP if else noimage

我在那個召喚出圖像的名稱搜索結果頁的頂部以下代碼:

$image2 = $row['item'] . ".jpg"; 
$imagefile2 = $_SERVER['DOCUMENT_ROOT'] . "/product_images/$imagefile2"; 
if(file_exists($imagefile2)){ 

在表本身我砍死這個以獲得正確的圖像顯示:

print "<td><center><img src=/product_images/$image2 width=80><br> 

當然,如果沒有圖像,就有一個破碎的圖像鏈接。我不知道正確的語法告訴服務器,如果沒有圖像,那麼顯示noimage.jpg(位於相同的文件夾中)。這可能是最好的添加代碼的幾行,但經過幾個小時的搜索和嘗試後,我投降了。

+0

在上表中缺少的行是 「IMG SRC =/product_images/$圖像2」 –

+0

你'$ imagefile2'線是混亂的。你設置'$ image2',但不要使用它 – Machavity

+0

我只會在'product_images'文件夾的htaccess中使用mod_rewrite,如果該文件不存在,則將其重寫爲其他圖像。 'RewriteCond%{REQUEST_FILENAME}! -f \ n重寫規則。 noimage.jpg'。然後,該文件夾中不存在的任何網址都會顯示noimage。你甚至可以將它重寫爲一個php腳本,記錄丟失的文件併發出noimage。然後,您可以輕鬆查看哪些產品沒有圖像或鏈接到錯誤的圖像來修復它。 –

回答

0

檢查文件是否存在,如果存在,請將image2變量設置爲指向它。如果它不存在,請將image2變量設置爲指向「無圖像」圖像。

if(file_exists($_SERVER['DOCUMENT_ROOT'] . "/product_images/".$row['item'].".jpg")){ 

$image2=$row['item'].".jpg"; 

}else{ 

$image2="/product_images/noimage.png"; 

} 
0
<?php 
if(file_exists($_SERVER['DOCUMENT_ROOT'] . "/product_images/".$row['item'].".jpg")){ 
$image2=$row['item'].".jpg"; 
}else{ 
// Specify No Image File Path to Variable 
$image2="/product_images/noimage.png"; 
} 
?> 

<td><center><img src="<?php echo $image2; ?>" width="80"><br>