2012-03-09 96 views
0

我想在php文件中使用FTP上傳在特定文件夾中找到的圖片。我正在上傳到ftp.photobucket.com,圖像所在的文件夾取決於用戶輸入。我想如何做到這一點如下:PHP ftp在後臺上傳

  1. 用戶輸入文件夾名稱(或從列表中選擇)到表單字段。

  2. 文件夾點擊「添加」按鈕(這是一個預先提交按鈕)

  3. 形式參數保存在本地存儲,並且形式被清除,從而使用戶可以輸入新數據形式。

  4. 此時,ftp連接在後臺打開,創建遠程文件夾並上傳圖像(這可能會在提交後發生,以防止多次執行ftp腳本,但在此時執行此操作對於時間更可取保存目的)

  5. 用戶在圖像上傳時向表單中輸入新數據,並按其選擇的頻率重複。

  6. 用戶按下提交,並將所有表單數據發佈到php文件中,根據表單輸入構建動態文件。

  7. 所有的時候,ftp進程繼續在後臺默默上傳。

  8. ftp過程完成後,用戶會收到通知,提示他的文件可供查看。當然,他可能在此之前查看這些文件,但圖像將顯示爲斷鏈,直到上傳完成。

我已經有了這個工作的每一步,除了在後臺運行ftp。無論我嘗試了什麼,都出現了一些錯誤。我嘗試過內置ftp方法的各種組合,並且我也嘗試從文件系統運行批處理腳本。我在php.net上找到的任何內容都沒有提供任何有效的工具。

這是在Windows機器上,我試過psexec.exe技巧(find psexec on this page)無濟於事。多次嘗試後,我現在感到困惑,甚至調試對我來說都不再有意義。任何幫助?

[編輯]我忘了補充說,爲了使這項工作,這是在本地主機上運行。首先讓它在那裏工作是我現在需要的。 [/編輯]

+0

而且「有些錯誤」是......? – 2012-03-09 15:17:18

+0

閱讀:http://www.somacon.com/p395.php並閱讀此:http://stackoverflow.com/questions/265073/php-background-processes – rkosegi 2012-03-09 15:27:04

+0

,「一些錯誤」不是「是」錯誤......它意味着意味着大量不同的錯誤和問題。 – user1167442 2012-03-10 04:17:55

回答

0

你不能使用PHP直接發送文件到ftp。您必須先在本地上傳它們。然後你可以使用php將它們發送到ftp。您可以在您的虛擬主機上使用cron執行php腳本並通過ftp發送文件。 有許多php類可以管理ftp: http://www.phpclasses.org/searchtag/ftp/by/package/tag/ftp/

+0

這是不正確的。我能夠使用php的內置ftp方法上傳它們。唯一的問題是我不得不等待他們完成加載。儘管我只是使用ftp_put上傳了他們,但確實獲得了成功。該鏈接是好的,但它似乎沒有任何解決在後臺運行文件的問題。 – user1167442 2012-03-10 04:14:19

+0

正如你所說_唯一的問題是,我不得不等待它們完成加載_這就是爲什麼我說_你不能直接發送文件到ftp_,這就是爲什麼你必須在本地存儲文件,並在以後使用cron發送它們(做一個每5分鐘一次)。 – Axel 2012-03-10 15:19:13