1. 程式人生 > >PHP圖片上傳同時儲存上傳路徑到資料庫

PHP圖片上傳同時儲存上傳路徑到資料庫

本片文件記載如何將圖片上傳至自己制定的目錄檔案下,同時可以將資訊填入資料庫。本片文件部分技術內容參照w3school。

首先是HTML頁面:

<form action="register.php" method="post" enctype="multipart/form-data" onSubmit="return InputCheck(this)">
  <label>圖片:<input type="file" name="file" id="file"></label><br>
  <button type="submit"
id="submit">新增</button> </form>

資料庫連結頁面:

<?php
 $conn = mysql_connect("127.0.0.1","root","") or die("資料庫連結錯誤".mysql_error());
 mysql_select_db("資料庫名",$conn) or die("資料庫訪問錯誤".mysql_error());
 mysql_query("set names utf-8");
?>

 

PHP接受頁面:

部分設定根據個人需求可進行增加刪除。

輸出語句根據個人需求輸出,無強制要求。

<?php
        
        //限制圖片型別格式,大小
        if ((($_FILES["file"]["type"] == "image/gif")
            || ($_FILES["file"]["type"] == "image/jpeg")
            || ($_FILES["file"]["type"] == "image/jpg"))
            && ($_FILES["file"]["size"] < 200000)) {
            if ($_FILES["file"]["error"] > 0) {
                
echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; } else { echo "檔名: " . $_FILES["file"]["name"] . "<br />"; echo "檔案型別: " . $_FILES["file"]["type"] . "<br />"; echo "檔案大小: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; echo "快取檔案: " . $_FILES["file"]["tmp_name"] . "<br />"; //設定檔案上傳路徑,選擇指定資料夾 if (file_exists("../upload/" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " already exists. "; } else { move_uploaded_file( $_FILES["file"]["tmp_name"], "../upload/" . $_FILES["file"]["name"] ); echo "儲存於: " . "../upload/" . $_FILES["file"]["name"];//上傳成功後提示上傳資訊 } } } else { echo "上傳失敗!";//上傳失敗後顯示錯誤資訊 } //連結資料庫 include('conn.php'); //定義變數,儲存檔案上傳路徑,之後將變數寫進資料庫相應欄位即可 $file = "../upload/" . $_FILES["file"]["name"]; $sql = "INSERT INTO 表名 (欄位名) VALUES ('$file')"; if (!mysql_query($sql)) { die('Error: ' . mysql_error()); } echo "成功新增一條記錄";//成功傳入資料後顯示成功新增一條資料 header("Refresh:1;url=XXX.html");//成功插入資料後返回某個網頁 ?>

資料庫自行建立,欄位型別給字元型VARCHAR,長度可以留長一點(如果儲存位置深的話)

如果插入資料庫資料時有其他欄位資料,可以同時寫在sql中,不會有干擾。