2010-01-29 70 views
0

我有一個提交給PHP頁面的表單。需要將表單中的數據添加到Access數據庫中,但該網站託管並且Access數據庫位於網絡驅動器上。所以現在,表格只是通過電子郵件將數據發送給手動輸入的人。我們正在努力改善這一過程。數據:PHP表單=>電子郵件=> Access 2007數據庫

因此,PHP頁面無法直接訪問.mdb文件。

我的想法是讓PHP頁面以某種方式創建一個編碼數據塊,可能在其中隱藏校驗和,並將它發送給我們的數據輸入人員。此電子郵件會是這個樣子:

===== BEGIN FORM DATA ===== 
oipcxunrhunt5klejswtnlerj,m,nxupogxjidoh 
jpos89760aq2y984hu5nw3jnm4tiopanj5kjny;s 
ljknm;l5nkl;ksnm;linjtg89jx9070g89xc6dgh 
890unysl;ne.lmsjo8r7g9n0cf9ogumhlkod9ysd 
8hj7pc9pg8uopcfmity68od7r9pyh9pm9pfghpju 
ypxdekopslp4mpsmkl;4m;slkmk;smjilenmuops 
inuobnuiou5io5nuosiun5oin5u4oinu5oiwnu3o 
in2oinounion0uonio76n598n109yb9705btbsnb 
===== END FORM DATA ===== 

UUencoding想到的,但實際上我想我只是需要某種形式的加密算法,這將是很容易在PHP和訪問(VBScript)來實現。

最後一部分,當然是在Access輸入窗體上會有一個按鈕。這個按鈕會彈出一個文本框,數據輸入人員只需將上面的文本塊粘貼到框中,然後單擊確定,一些宏代碼將處理解包數據並填寫表單。然後數據錄入人員只需檢查一切正常,並將記錄添加到數據庫。

這個過程聽起來是最有效的嗎?你會推薦什麼算法來創建該文本塊,並輕鬆將其解壓縮到Access表單中?

順便說一下,我非常精通PHP,而不是Access/VBScript。請詳細說明事物的訪問方面。謝謝!

回答

0

思考@theMike建議的內容,我會建議完全繞過電子郵件。

請記住,Access可以直接與MS XMLHTTP庫進行交互,以便它可以直接與網頁交談。因此,您需要設置PHP腳本,以便Access可以加載返回Access需要處理的內容。我的一個客戶使用此功能從他們的Access數據庫上傳庫存到他們的網站。它也可以在相反的方向上工作(即下載)。

是否要將表單輸入的結果存儲在數據庫中或僅存儲在文本文件中取決於您是否有可用的數據庫。如果你使用數據庫,這很容易。如果使用文本文件,我會爲每個表單結果建議一個,而不是將每個表單結果作爲一行附加到單個文本文件中,因爲處理單個文件要比處理文本文件的多行更容易。但是,如果您的PHP頁面中已經有一個數據庫抽象層,那麼您可以很好地使用它來通過SQL處理文本文件(如果您的抽象層支持的話)。

0

也許你可以用不同的方式克服問題?讓PHP將其數據轉儲到MySQL數據庫,然後讓Access端在加載時從數據庫中提取新數據。

相關問題