[請益] PHP+MySQL上傳檔案問題

看板PHP作者 (strifecloud)時間11年前 (2014/09/17 22:44), 編輯推噓2(2013)
留言15則, 7人參與, 最新討論串1/1
各位好,小弟新手最近再試著作類似個人肖像照片的上傳系統 但上傳檔案都無法成功,上網找參考資料也沒效果,想上來請教大家。 我用PHP+MySQL MySQL裡的資料庫是memberdata, 裏面有m_id,m_name,m_username, m_passwd, m_profilepic等欄位 其中希望是把照片的路徑存在m_profilepic欄裡,照片存放的資料夾是/profilepic 不知為何一直上傳失敗,想請教是否程式碼是否哪裡有問題,程式碼主要是參考 書上和網路資料寫成的,感謝! 程式碼如下 : <?php header("Content-Type: text/html; charset=utf-8"); require_once ("connMysql.php"); session_start(); //檢查是否經過登入 if (!isset($_SESSION["loginMember"]) || ($_SESSION["loginMember"] == "")) { header("Location: index.php"); } //執行登出動作 if (isset($_GET["logout"]) && ($_GET["logout"] == "true")) { unset($_SESSION["loginMember"]); unset($_SESSION["memberLevel"]); header("Location: index.php"); } //重新導向頁面 $redirectUrl = "member_center.php"; //更新相簿 if (isset($_POST["action"]) && ($_POST["action"] == "update")) { //執行照片新增及檔案上傳 if ($_FILES["m_profilepic"]["tmp_name"] != "") { $query_update = "UPDATE `memberdata` SET `m_profilepic`='" . $_POST["profilepic"] . "' WHERE `m_username`='" . $_SESSION["loginMember"] . "'"; mysql_query($query_insert); if (!move_uploaded_file($_FILES["m_profilepic"]["tmp_name"], "profilepic/" . $_FILES["m_profilepic"]["name"][$i])) die("檔案上傳失敗!"); ; } } //繫結登入會員資料 $query_RecMember = "SELECT * FROM `memberdata` WHERE `m_username`='" . $_SESSION["loginMember"] . "'"; $RecMember = mysql_query($query_RecMember); $row_RecMember = mysql_fetch_assoc($RecMember); ?> <html> <head> <title>upload</title> </head> <body> <div class="formarea"> <form action="" method="POST" enctype="multipart/form-data" name="formJoin" id="formJoin" onSubmit="return checkForm();"> <p> 肖像照片: </p> <input type="file" name="m_profilepic" id="m_profilepic" /> <p> <input name="m_profilepic" type="hidden" id="m_profilepic" value="m_profilepic"> <input name="action" type="hidden" id="action" value="update"> <input type="submit" name="Submit2" value="修改資料"> <input type="reset" name="Submit3" value="重設資料"> <input type="button" name="Submit" value="回上一頁" onClick="window.history.back();"> </p> </form> </div> </body> </html> -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 113.151.24.38 ※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1410965059.A.228.html

09/17 22:48, , 1F
還沒看code 先問一下你全縣有開齁
09/17 22:48, 1F

09/17 22:49, , 2F
權限
09/17 22:49, 2F

09/17 23:50, , 3F
請問權限是指?
09/17 23:50, 3F

09/18 02:03, , 4F
資料夾的權限
09/18 02:03, 4F

09/18 06:30, , 5F
有開
09/18 06:30, 5F

09/18 09:08, , 6F
所謂沒成功 是如何失敗呢
09/18 09:08, 6F

09/18 09:22, , 7F
$_FILES["m_profilepic"]["name"][$i] <--為啥有 $i ?
09/18 09:22, 7F

09/18 09:23, , 8F
沒看到迴圈怎麼會生出一個 $i ?
09/18 09:23, 8F

09/19 07:01, , 9F
$i是誤值了,可能在打的時候參考的程式碼有沒消除到
09/19 07:01, 9F

09/19 07:02, , 10F
沒成功主要是兩個地方,一個是在$Query_Update時,
09/19 07:02, 10F

09/19 07:04, , 11F
$_POST["m_profilepic"]沒有接收到form的值
09/19 07:04, 11F

09/19 07:05, , 12F
另一個是會顯示“檔案上傳失敗”(原本就在程式碼語法)
09/19 07:05, 12F

09/19 15:51, , 13F
form 的 enctype 有正確嗎
09/19 15:51, 13F

09/19 16:46, , 14F
為什麼要多一個m_profilepic的hidden?這樣值被蓋掉
09/19 16:46, 14F

09/19 16:46, , 15F
了吧?
09/19 16:46, 15F
文章代碼(AID): #1K6Pv38e (PHP)
文章代碼(AID): #1K6Pv38e (PHP)