2014-01-26 4 views
-1

일부 이미지 파일을 업로드했습니다. 하지만 나는 그걸 페이지에 보여줄 수 없다. 이 mysql 데이터베이스에서 이미지를 가져올 수 없습니다.

foreach($_FILES['photo']['tmp_name'] as $key => $tmp_name) 
{ 
    $file_name = $key.$_FILES['photo']['name']; 
    $file_size =$_FILES['photo']['size'][$key]; 
    $file_tmp =$_FILES['photo']['tmp_name'][$key]; 
    $file_type=$_FILES['photo']['type'][$key]; 
    $photo= "0". $_FILES['photo']['name'][0]; 
    $photo2=$file_name = $key.$_FILES['photo']['name'][1]; 
    $photo3= $file_name = $key.$_FILES['photo']['name'][2]; 
} 

mysql_query("insert into $table(ID,Name,Photo1,Photo2,Photo3,Text) 
      values('$id','$fullname','$photo','$photo2','$photo3','$text')"); 

을 업로드한다 그리고 이것은 내가 이미지를 보여주기 위해 노력하고 방법은 다음과 같습니다 : 여기에 지금과 같은 모습입니다

$query = mysql_query("SELECT *FROM Creative"); 
     while ($f = mysql_fetch_array($query)): 
    ?> 
    <tr bgcolor="#c0c0c0"> 
     <td><?php echo '<img src="creative/"'.$f['Photo1'].'width="50" height="50" alt=""></img>'; ?></td> 
     <td><?php echo '<img src="creative/"'.$f['Photo2'].'width="50" height="50" alt=""></img>'; ?></td> 
     <td><?php echo '<img src="creative/"'.$f['Photo3'].'width="50" height="50" alt=""></img>'; ?></td> 

    </tr> 

내가 잘못하고있는 중이 야 무엇을?

+0

확인을 봐,하지만 일이? 업로드가 작동합니까? 데이터가 DB에 삽입되어 있습니까? 어떤 디버깅을 했습니까? – brasofilo

+1

@ jd182 - 보시다시피, OP는 데이터베이스에 파일 이름을 저장하고 있습니다. –

답변

0

표현

$photo2=$file_name = $key.$_FILES['photo']['name'][1]; 

은 잘못된 것입니다. foreach$_FILES['photo'] 개를 반복합니다. 따라서 $_FILES['photo']['name']은 파일 중 하나의 이름입니다. $_FILES['photo']['name'][1]은 파일 이름의 두 번째 문자입니다.

3 개의 사진을 한 행에 저장하려면 먼저 루프를 세 번 거쳐야합니다. 배열을 작성하는 대신 SQL을 실행하고 파일 이름을 색인화하십시오.

file upload

관련 문제