回複討論(解決方案)
那個絕對路徑是上傳者的機器上的,跟你有什麼關係?
你只要處理你收到的檔案就可以了
不知道你要擷取那個路徑幹什麼,真想擷取,用js試試看。
那個絕對路徑是上傳者的機器上的,跟你有什麼關係?
你只要處理你收到的檔案就可以了
我想擷取絕對路徑,然後進行格式轉換,有時候別人可能上傳的是EXECL檔案。可是Execl處理不了,我必須轉換成CSV格式的,才能處理。
不知道你要擷取那個路徑幹什麼,真想擷取,用js試試看。
PHP有沒有對應的方法可以擷取,應該剛轉PHP沒有多久。網上沒有找到對應資料。
你在北京,我在上海,如果我上傳了一個 excel 檔案,那麼你要到我的機器上將他轉成 csv 檔案嗎?
檔案被上傳後,預設地會被儲存到服務端的預設臨時目錄中,除非 php.ini 中的 upload_tmp_dir 設定為其它的路徑。服務端的預設臨時目錄可以通過更改 PHP 運行環境的環境變數 TMPDIR 來重新設定
如果實在沒辦法找出那個目錄,你可以用move_uploaded_file轉存後再做處理,其實也沒必要知道那個目錄,直接轉存後再處理好了。
必須要用js來擷取input框的值放入隱藏欄位中,然後一起提交。
別弄複雜了,你可以提示使用者必須上傳csv檔案。
你在北京,我在上海,如果我上傳了一個 excel 檔案,那麼你要到我的機器上將他轉成 csv 檔案嗎?
按你這樣說肯定是在他那邊轉換完成。但是我現在需要不是檔案,而是檔案裡面資料,直接本地匯入後把資料存到資料庫當中。
必須要用js來擷取input框的值放入隱藏欄位中,然後一起提交。
別弄複雜了,你可以提示使用者必須上傳csv檔案。
我先前是那麼做的,是經理硬要改成讓別人也可以直接上傳Execl。我想想用JS怎麼實現把。
即使你擷取了那個檔案的本地路徑,你能用js修改他本地檔案?
檔案被上傳後,預設地會被儲存到服務端的預設臨時目錄中,除非 php.ini 中的 upload_tmp_dir 設定為其它的路徑。服務端的預設臨時目錄可以通過更改 PHP 運行環境的環境變數 TMPDIR 來重新設定
如果實在沒辦法找出那個目錄,你可以用move_uploaded_file轉存後再做處理,其實也沒必要知道那個目錄,直接轉存後再處理好了。
這個方法(move_uploaded_file)在這裡不能使用,他好像是伺服器產生出來的快取檔案,如果是上傳Execl的話,也會提前會轉了,如果轉了的話。就會資料不對。所以我想在上傳完成後,點確定時候,我先把Execl檔案轉換成Csv格式,然後在直接使用就好了,程式也不需要變動。我先嘗試用JS試試。剛學還有許多東西需要瞭解的,不過你剛說的原理。對我還是挺有用的,謝謝了。
即使你擷取了那個檔案的本地路徑,你能用js修改他本地檔案?
用 PHP代碼 可以重建一個CSV檔案出來。這我試過,可以。
那你就判斷一下上傳的檔案(那個臨時檔案)的類型就可以了吧,如果判斷類型為execl類型的話,用php轉一下唄
請問你要幹什嗎???上傳檔案會產生臨時檔案名稱 操作這個就行了 PHP有檢查類型的函數 你本末倒置了吧
瀏覽器不給網頁擷取本機資料的許可權,你只能把excel檔案直接傳到伺服器臨時目錄,然後在伺服器處理檔案,處理完後再匯入資料庫。
這是唯一的方法。
檔案被上傳後,預設地會被儲存到服務端的預設臨時目錄中,除非 php.ini 中的 upload_tmp_dir 設定為其它的路徑。服務端的預設臨時目錄可以通過更改 PHP 運行環境的環境變數 TMPDIR 來重新設定
如果實在沒辦法找出那個目錄,你可以用move_uploaded_file轉存後再做處理,其實也沒必要知道那個目錄,直接轉存後再處理好了。
這個方法(move_uploaded_file)在這裡不能使用,他好像是伺服器產生出來的快取檔案,如果是上傳Execl的話,也會提前會轉了,如果轉了的話。就會資料不對。所以我想在上傳完成後,點確定時候,我先把Execl檔案轉換成Csv格式,然後在直接使用就好了,程式也不需要變動。我先嘗試用JS試試。剛學還有許多東西需要瞭解的,不過你剛說的原理。對我還是挺有用的,謝謝了。
你不是上傳檔案嗎?這個函數怎麼不能使用?這個函數是上傳專用的,其它地方還用不起來。可以移到你能移的目標位置,然後隨意你處理了。
即使你擷取了那個檔案的本地路徑,你能用js修改他本地檔案?
用 PHP代碼 可以重建一個CSV檔案出來。這我試過,可以。
你能用js修改使用者電腦上的檔案???奇蹟啊。。。
你想要讓使用者錄入多條資料,然後儲存到資料庫中。
如果你能夠處理Excel,得到使用者上傳的Excel檔案後,通過背景程式直接從Excel檔案提取出資料,然後儲存。
如果你不能處理Excel,那麼就不要讓使用者上傳Excel檔案,換成其他你能夠處理的資料格式,比如直接進行表單錄入或者按照固定格式上傳txt檔案。
至於擷取使用者上傳的檔案在使用者電腦中的絕對路徑,就不要想了,即使擷取到了,你也無法對使用者電腦上的檔案進行操作。
即使你擷取了那個檔案的本地路徑,你能用js修改他本地檔案?
用 PHP代碼 可以重建一個CSV檔案出來。這我試過,可以。
你能用js修改使用者電腦上的檔案???奇蹟啊。。。
你想要讓使用者錄入多條資料,然後儲存到資料庫中。
如果你能夠處理Excel,得到使用者上傳的Excel檔案後,通過背景程式直接從Excel檔案提取出資料,然後儲存。
如果你不能處理Excel,那麼就不要讓使用者上傳Excel檔案,換成其他你能夠處理的資料格式,比如直接進行表單錄入或者按照固定格式上傳txt檔案。
至於擷取使用者上傳的檔案在使用者電腦中的絕對路徑,就不要想了,即使擷取到了,你也無法對使用者電腦上的檔案進行操作。
樓上正解