2009-01-30 3 views
1

안녕하세요 기본적으로 내 데이터베이스에 입력되지 않은 기본 그림을 보여주는 간단한 IF 문을 작성하려고합니다. 내 그림과 파일 이름을 저장하는 데이터베이스를 저장할 서버를 사용하고 있으므로 db에 파일 이름이 있으면 표시 할 이미지를 얻을 수 있지만 If 문에서 레코드가 비어 있으면 말할 수 있습니다. 기본값을 표시합니다. 영상. 나는 어떤 생각을하지 않지만 시도했지만 여기에 몇 가지 코드가 있습니까? 나는 그것을하기위한 몇 가지 다른 방법을 시도했지만 어느 것도 작동하지 않았다.PHP 데이터베이스 레코드가 비어있는 else 문은 기본 그림을 표시합니다.

건배. 지금까지

코드 :

//Retrieves data from MySQL 
$data = mysql_query("SELECT * FROM db*****") or die(mysql_error()); 

//Puts it into an array 
while($info = mysql_fetch_array($data)) 
{ 
?> 

     <div class="member"> 
     <div class="imageSection"> 
     <? 

     if($info['photo'] == '') 
     {echo "<img class=\"memberImage\" src=images/default.jpg>";} 
      else {echo "<img class=\"memberImage\" src=images/".$info['photo'] .">";} 
     ?> 
     </div> 
     <div class="memberInfo"> 
<? Echo "<p><strong>Name: ".$info['nameMember'] . "</strong></p>"; 
Echo "<p>Position: ".$info['bandMember'] . " </p>"; 
Echo "<p>About Band Member ".$info['nameMember'] .":".$info['aboutMember'] . "</p>"; 
Echo "<p>Other Bands: ".$info['otherBands'] . " </p><br/></div></div><br class=\"clearBoth\"/>"; 

} 
?> 
+0

어떤 부분이 작동하지 않습니까? 예를 들어 img src 속성 주위에 따옴표를 넣으려는 것 같습니다. src = "filename"하지만 괜찮아 보이는 것 외. –

+0

print_r ($ info)을 시도해 보았습니까? 실제로 그 값이 다른 것이 아닌지 알아 보았습니까? – feihtthief

답변

4

무엇 ternary 간단한 약 :

$photo = ($info['photo'] == null) ? "default.jpg" : $info['photo']; 
echo "<img class=\"memberImage\" src=images/". $photo .">"; 
+0

피곤했지만 기본 그림이 표시되지 않았습니다. 업로드 된 그림을 표시합니다. 위의 코드와 동일한 문제입니다. 고마워, 다른 아이디어가 있었 니? –

1

당신에게 열의 기본값은 ""로 설정되어 있는지 확인하고 있습니다. 그것은 null로 설정할 수 있습니까? 비록 그것이 idk가 작동하지 않을지라도.

echo $info['photo']; 

또 다른 제안을 비교하기 전에 데이터를 트림하는 것입니다 경우 앞에 다음 코드를 추가합니다.

1

이미지를 수동으로 삭제하더라도 작동하는 file_exists을 사용할 수 있습니다.

$photo = 'images/'. $info['photo']; 
if (file_exists($photo) == FALSE) 
{ 
    $photo = 'images/default.jpg'; 
} 
echo '<img class="memberImage" src="'. $photo .'"/>'; 
+0

+1 전화하세요. 관계없이 모든 데이터베이스 문제를 이렇게 할 것입니다. – da5id

0

empty()는 이후에있는 조건의 종류를 잡기 때문에 매개 변수가 '경우에 true를 돌려줍니다) (

if(empty($info['photo'])) 
{ 
    .... 
} 

빈 시도'거짓, NULL, 0, 0, 또는 수 하늘의 배열

관련 문제