台灣最大程式設計社群網站
線上人數
851
 
會員總數:246038
討論主題:189626
歡迎您免費加入會員
討論區列表 >> PHP >> GET 刪除檔案
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
GET 刪除檔案
價值 : 5 QP  點閱數:575 回應數:10
樓主

mypetertw
門外漢
0 97
925 145
發送站內信




我有做一個系統是可以上傳大頭貼的
然後會直接替換剛才上傳的大頭貼
並且圖片會產生亂碼 例如1434697475.jpg
只是,我在撈資料到前台時,它會顯示img/1434697475.jpg
因為我是抓欄位的資料...
但是我要讓它一鍵刪除



但這樣的話抓到的網址就會變成
del_ok.php?x=img/1434697475.jpg
刪不掉檔案..多了img/
請問要怎麼把它忽略?

本篇文章發表於2015-06-19 15:11
1樓
作者回應

mypetertw
檢舉此回應
已解決了...
本篇文章回覆於2015-06-19 15:16
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

mypetertw
檢舉此回應
我是使用substr
本篇文章回覆於2015-06-19 15:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

皮皮快跑
檢舉此回應
如果這程式能跑。
表示你的php系統設置很糟糕。
因為你允許了html表頭輸出(header)
不論是header()或是session_start()前面都不應該有html
你沒有做最嚴謹的程式設置,在你現在的開發環境或許能動。
但等到正式上server時可能就出問題了。
再來另一個問題就是你在html中間插入了php的「控制邏輯」以及「資料模型」
相信我,這是非常糟的設計。
簡單來說你的東西已經變成的耦合性超高而且難以維護的狀態。
你現在要學習的是,如何讓你的程式碼和html能夠分開來個別處理。
本篇文章回覆於2015-06-19 16:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

mypetertw
檢舉此回應
也就是說我只要在html前先呼叫session_start()就可以了嗎
我是以為每個php都必須呼叫一次session_start()
本篇文章回覆於2015-06-19 20:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

皮皮快跑
檢舉此回應
當你想要設置session、傳遞session、接收session時,才需要設定session_start()
而且每一次的執行只要設定一次。
最重要的是在他之前不能有任何輸出。(也就是不能用html或是echo任何東西)
如果說你在php.ini有設定output_buffering,也就是輸出暫存,或許不會出錯。
但是通常為了避免不同的伺服器設定我們寧願關掉他。
然而關掉的話就像我說的,你不可以在session_start()或是header()之前有任何的輸出。
但如果你照這個規則來做,就能避免在不同伺服器上產生異常的問題。

本篇文章回覆於2015-06-19 21:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

mypetertw
檢舉此回應
我的LOG上一直出現[18-Jun-2015 20:50:21 America/Denver] PHP Notice: A session had already been started - ignoring session_start() in /home2/public_html/index.php on line 409
本篇文章回覆於2015-06-20 07:56
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
回應

皮皮快跑
檢舉此回應
看起來就是session已啟用然後你又一直session_start()
你要不要檢查你的php.inij是不是把session給auto_start了
本篇文章回覆於2015-06-20 09:33
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

mypetertw
檢舉此回應
使用者在登入的時候就會啟用session_start()了
也就是說只要這時候啟用session_start()就行了
到其他頁面就不需要session_start()嗎?
或是每一頁都需要session_start()?
本篇文章回覆於2015-06-21 10:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
最有價值解答

迷路
捐贈 VP 給 迷路 檢舉此回應
當頁面中有使用到session時,不論存取或是刪除,該頁面都需要session_start()
但是只要寫一次就夠了,多了就會出現你LOG出現的警告訊息

需要注意的是,如果你include和require進來的php中有session_start()
你又在頁面中session_start()一次,也會出現同樣的警告訊息
本篇文章回覆於2015-06-22 12:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
回應

浩瀚星空
捐贈 VP 給 浩瀚星空 檢舉此回應
程式節構上,要區分好主程式跟附屬程式及掛件的區分。

也可以善用全域包含處理如global.php。將並要的東西寫在這堙C然後主程式來包含進來。
明白require和include的掛入模式。

session_start()只需要在主程式內呼叫一次。且include進來的程式都無需再呼叫。


本篇文章回覆於2015-06-23 14:19
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.