2014-04-12 49 views
0

那麼我有一個上傳腳本。我需要的是如何將它自動上傳到我的網站上可以顯示爲圖像庫的頁面?如何使圖庫自動更新?

代碼:

<?php 
// Configuration - Your Options 
$allowed_filetypes = array('.jpg','.gif','.bmp','.png','.jpeg'); // These will be the types of file that will pass the validation. 
$max_filesize = 1000000; // Maximum filesize in BYTES (currently 0.5MB). 
$upload_path = './images/uploaded_images/'; // The place the files will be uploaded to (currently a 'files' directory). 
$filename = $_FILES['userfile']['name']; // Get the name of the file (including file extension). 
$ext = substr($filename, strpos($filename,'.'), strlen($filename)-1); // Get the extension from the filename. 

// Check if the filetype is allowed, if not DIE and inform the user. 
if (! in_array($ext, $allowed_filetypes)) 
    die('The file you attempted to upload is not allowed.'); 

// Now check the filesize, if it is too large then DIE and inform the user. 
if (filesize($_FILES['userfile']['tmp_name']) > $max_filesize) 
    die('The file you attempted to upload is too large.'); 

// Check if we can upload to the specified path, if not DIE and inform the user. 
if (! is_writable($upload_path)) 
    die('You cannot upload to the specified directory, please CHMOD it to 777.'); 

// Upload the file to your specified path. 
if (move_uploaded_file($_FILES['userfile']['tmp_name'],$upload_path . $filename)) 
    echo 'Your file upload was successful, view the file <a href="' . $upload_path . $filename . '" title="Your File">here</a>'; // It worked. 
else 
    echo 'There was an error during the file upload. Please try again.'; // It failed :(. 
?> 

什麼想法?

回答

0

一種方法是掃描您正在存儲圖像的目錄併爲每個遇到的文件編寫html。看看scandir函數。一些基本的代碼讓你開始:

$upload_path = './images/uploaded_images/'; 

$files = scandir($upload_path); 
foreach($files as $filename) { 
    if(is_image($filename)) { 
     echo "<div class='gallery-image'><img src='{$filename}'/></div>"; 
    } 
} 

function is_image($filename) { 
    $image_extensions = array('jpg', 'jpeg', 'png', 'gif'); 
    $ext = strtolower(pathinfo($filename, PATHINFO_EXTENSION)); 
    return in_array($ext, $image_extensions);  
}