[分享]CakePHP+uploadify => Ajax uploader
source code:
http://www.ccmos.co.cc/samples/cakephp.test.200910201405.tar.gz
以上是打包起來的source code,之後DEMO網頁會一直改
Demo URL:
http://www.ccmos.co.cc/samples/cakephp/fileuls (test / test)
看起來大至上是OK了。
方法概述:
1. 製作一個SessionsController 來提供 id
2. js 初始化時取得Session id
並傳給uploadify的initializer使用傳給處理的controller
3. 在beforeFilter利用$this->Session->id($this->params['pass'][0])
指定了session_id,之後$this->Session->start()
這樣基本上就OK了~希望對有遇到相同問題的同好們有幫助。
※ 引述《roga (任性)》之銘言:
: ※ 引述《mosluce ()》之銘言:
: : 網址:
: : http://www.ccmos.co.cc/samples/cakephp/fileuls (test / test)
: : Source Code:
: : http://www.ccmos.co.cc/samples/cakephp.test.20091020.tar.gz
: : 還沒使用Database
: : 以下 is 狀況描述 ( Server:Ubuntu Linux 9.04 )
: : (1)FireFox 3.5 執行狀況
: : 登入 → Browse(*n次) → upload
: : a.→ uploader Action 如果沒有allow → 空轉
: : → 下方response顯示Cake錯誤訊息+登入視窗
: : b.→ uploader Action 直接allow跳過登入驗證
: : → 上傳成功(uploads資料夾中有檔案)
: : (2)IE 8
: : 情況與上雷同,但...傳完後...Session遺失(?),
: : reload頁面變成又跳到登入頁(FireFox不會變登出)
: : 狀況交代完畢...以上
: : 覺得相當奇怪,是否有大大知道哪邊出了差錯?
: uploadify flash 本身上傳自己的 session 和 browser 不會共用,
: 就連 user agnet 名稱也不同,所以會有登入驗證失敗的問題。
: 這部份的解法不會太難:
: 1. 新增一個資料表裡面有一個 hashkey 對應 user_id, album_id 之類的欄位
: 2. 每次上傳的時候,先新增一個 hashkey, user_id 及其它你需要的資料
: 3. 當上傳的時候,取回剛剛新增的 hashkey 一併然後 post 到妳的 controller 裡面
: 4. 根據 hashkey 去找 user_id..等等,加上上傳的照片路徑(或照片),插入新資料
: 5. 上傳完畢。
: 這是一個簡單的解法,很有用。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.85.58.90
→
10/20 15:14, , 1F
10/20 15:14, 1F
→
10/20 15:47, , 2F
10/20 15:47, 2F
推
10/20 16:13, , 3F
10/20 16:13, 3F
推
10/20 17:41, , 4F
10/20 17:41, 4F
PHP 近期熱門文章
PTT數位生活區 即時熱門文章