2014-01-26 48 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

好的,但會發生什麼?上傳是否有效?數據是否插入到數據庫中?你做了什麼調試? – brasofilo

+1

@ jd182 - 正如你所看到的,OP在數據庫中存儲文件名。 –

回答

0

表達

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

是錯誤的。您的foreach重複上傳的每個$_FILES['photo']。因此​​只是其中一個文件的名稱。 $_FILES['photo']['name'][1]是文件名的第二個字符。

如果要將三張照片存儲在一行中,首先必須循環(三次),收集該文件併發出SQL,而不是像索引數組那樣對文件名進行索引。

看看file upload