2013-03-25 96 views
0

畫廊我需要一些意見,我該怎麼辦以下: 我通過HTML5拖拽做腳本,上傳圖片拖放功能,這是工作。我想創建系統中上傳用戶放置圖像(和它們上傳),寫名字和畫廊的說明並點擊提交,需要有將創建畫廊,給予ID,並給該ID的圖像的功能並將圖像傳輸到指定的文件夾(圖庫名稱)。目前我不知道該怎麼做。此外,如果用戶決定不創建畫廊,需要刪除(我猜這可以通過cron作業來完成),其上傳的圖片。笨2.1 - 第一次上傳圖像,然後創建數據庫

DB的畫廊如下:

gallery 
    id_gallery 
    name 
    description 
    date_created 

gallery_images 
    id_image 
    gallery_id 
    path 

回答

1

您不必將文件移動到另一個文件夾。不要緊,他們住,只要申請就可以找到它們在那裏(見:path)。

什麼是對你有DB計劃?你顯示模式,但提到你不知道如何使用它?

反正......如果你增加了一個active場畫廊表,然後你可以將其標記在提交的活躍。

gallery 
    id_gallery int 
    name text 
    description text 
    date_created date 
    active default 0 

gallery_images 
    id_image int 
    gallery_id int 
    path text 

前提是你實例,當第一圖像上傳畫廊(或在某點)和行插入gallery_images對於上載的每個圖像,你可以提交像這樣:

function submit_gallery($id = NULL, $active = NULL) 
{ 
    if($id AND $active === 1) 
    { 
     $this->db->where('id', $id); 
     $this->db->update('gallery', array('active' => 1)); 
    } 

    //could have a "cancel" button call this. or use a cron job 
    elseif($id AND $active === 0) 
    { 

     $this->db->where('gallery_id', $id); 
     $imgs = $this->db->get('gallery_images'); 

     foreach($imgs->result() as $img) 
     { 
      //delete the img files 
      unlink($img->path); 
     } 

     $this->db->where('gallery_id', $id); 
     $this->db->delete('gallery_images'); 

    } 
} 
+0

這種方法在第一次圖片上傳時創建圖庫,但在我的情況下,用戶首先上傳圖片(拖放它們),然後(在編寫關於圖庫的數據之後),他點擊**創建圖庫**。這樣圖像在圖像被創建之前就被上傳了。目前我正在試驗另一張臨時包含圖像的表格,並且在創建圖庫時,該表格中的數據將被複制到** gallery_images **並從臨時表格中刪除。 – Sasha 2013-03-25 18:11:57

相關問題