2012-01-01 3 views
0

ok ...이 문제를 해결하기위한 세 번째 시도입니다. 바라건대 내가 이번에는 조금 더 명확하게 말했으면 좋겠다. 나는 다양한 이미지를 담고있는 폴더를 가지고있다.존재하는 경우 웹 페이지에 이미지를 표시하려면 어떻게해야합니까? 아니면 "기본 이미지"를 사용합니까?

폴더 이름은 '../wp-content/gallery/playerphotos/은'

파일 이름은 통과 : 일치하는 파일이 존재

$photoname = $row['First_Name'] . " " . $row['Last_Name']; 

경우, 내가 좋아하는 것 사진 (".jpg")을 표시합니다. 파일이 존재하지 않는 경우

후 같은 폴더에 기본을 사용하고 있습니다 : '../wp-content/gallery/playerphotos/NoPhotoAvailable.jpg'는

난 당신의 제안을 기다리겠습니다. 시간 내 줘서 고마워.

+0

당신은 내가 마지막으로 알아낼은 "file_exists"기능 http://php.net/manual/en/function.file-exists.php – leopic

답변

1

당신은 파일 이름이 있는지 확인하기 위해 다음과 같은 PHP 함수를 사용할 수 있습니다 (귀하의 예제에서, $의 photoname)이 존재합니다

http://www.php.net/manual/en/function.file-exists.php

: 다음 페이지에서 문서

bool file_exists (string $filename) 

체크 아웃

+0

을 사용할 수 아파치를 사용하면이 같은 규칙을 필요 했어 문제 그것은 내가 사용했던 경로와 관련이있다. 절대 경로를 정의해야했습니다 : $ absolutepath = $ _SERVER { 'DOCUMENT_ROOT'}. 'wp-content/gallery/playerphotos /'. $ photoname. '.jpg'; 이제 file_exists 함수가 제대로 작동합니다. ;) – DoubleA

0

하나의 인수를 파일 이름으로 사용하는 PHP 함수 file_exists를 사용하려고합니다.

먼저 파일이 서버에 있는지 확인하고 싶습니다. 그렇지 않으면 photoname을 기본 이름으로 설정합니다.

if(!file_exists($photoname)) { 
    $photoname = '../wp-content/gallery/playerphotos/NoPhotoAvailable.jpg'; 
} 
1

좀 더 까다로운 해결책은 어떻습니까? :)

$photoname = (file_exists($row['First_Name']." ".$row['Last_Name']))?($row['First_Name']." ".$row['Last_Name']):("../wp-content/gallery/playerphotos/NoPhotoAvailable.jpg") 

은 그럼 그냥 이미지 태그

<img src="<?php echo $photoname; ?>" /> 
+0

마침내 문제를 파악합니다. 사용하고 있던 경로와 관련이 있습니다. 나는 절대 경로를 정의 할 필요가 있었다 : $ absolutepath = $ _SERVER { 'DOCUMENT_ROOT'}. 'wp-content/gallery/playerphotos /'. $ photoname. '.jpg'; 이제 file_exists 함수가 제대로 작동합니다. ;) – DoubleA

2

나는 까다 솔루션을 추가합니다. file_exists()을 호출 할 때마다 (최소한의) 오버 헤드가 발생하지 않고 PHP가 사진 이름을 출력하는 것처럼 보입니다 (예 : ../wp-content/gallery/playerphotos/Jack Sample.jpg). 그런 다음 playerphotos 디렉토리의 404 파일을 NoPhotoAvailable.jpg으로 설정하는 약간의 .htaccess 규칙 (Apache를 사용하는 경우)을 작성하십시오. 아파치를 사용하지 않는다면 아마도 서버에서 사용할 수있는 비슷한 규칙이있을 수 있지만, 여기에있는 장점은 100 % 이식 가능하지는 않지만 파일이 존재하는지 검사하는 작업을 손쉽게 수행 할 수 있다는 것입니다 파일을 제공하십시오.

<Directory /path/to/www/wp-content/gallery/playerphotos> 
    ErrorDocument 404 /wp-content/gallery/NoPhotoAvailable.jpg 
</Directory>