php表單提交 圖片、音樂、視頻、文字,四種類型共同提交到資料庫

來源:互聯網
上載者:User

標籤:name   amp   提交   建立   query   mpeg   .com   運行   dump   

這個問題一直困擾了我好幾天,終於在今天讓我給解決了,難以掩飾的激動。

其實在之前沒有接觸到這種問題,只是表單提交資料而已,再就是圖片,四種類型同時提交還真是沒遇到過,做了一個系統,其中有一個功能就是提交這四種類型的資料,我只能把這個功能拿到最後來做,就在這幾天所有功能都做完了,只剩下了這一個功能,我真的很鬧心,這幾天睡覺都睡的不踏實,各種的表單提交,做夢也是表單提交,醒來後我在想我的內心原來那麼脆弱麼,一點壓力都承受不住?

事實還好,不管怎麼樣問題都被解決了

也很感謝部落格園的一位哥哥,指點了我,遠程幫我改了一下環境配置,解決了最關鍵的問題。

廢話就不多說了,下面來看一下代碼和吧

只為了實現功能,所以寫的很簡單

提交視頻有個前提就是要改一下php的設定檔,找到這個檔案,改一下它規定檔案的最大mb就可以了

這個必須要改,不改的話,視頻是傳不過去的

接下來看一下html的代碼

 

 運行起來就是這種效果

接下來寫它的處理頁面

寫之前先列印一下。看看能不能把資料都能傳過來

在它的處理頁面

寫完後儲存一下

然後在啟動並執行第一個頁面,填充上資料

因為只列印了圖片、音樂、視頻、所以文字可以先不填

點擊上傳

資料可以被成功傳過來,這樣我們就成功了一大半了

下面再來分別寫這三類檔案

//       圖片//判斷檔案上傳是否出錯if($_FILES["file"]["error"]){    echo $_FILES["file"]["error"];}else{    //控制上傳檔案類型    if(($_FILES["file"]["type"]=="image/jpeg" || $_FILES["file"]["type"]=="image/png") && $_FILES["file"]["size"]<1024000)    {        //找到檔案存放的位置        $filename = "./file/".date("YmdHis").$_FILES["file"]["name"];  //加 .  拼接        //轉換編碼格式        $filename = iconv("UTF-8","gb2312",$filename);        //判斷檔案是否存在        if(file_exists($filename))        {            echo "該檔案已存在!";        }        else        {        //儲存檔案        move_uploaded_file($_FILES["file"]["tmp_name"],$filename);                   //移動上傳檔案          $tp = $filename;          }    }    else    {        echo "檔案類型不正確";    }}if($_FILES["file1"]["error"]){    echo $_FILES["file1"]["error"];}else{    //控制上傳檔案類型    if(($_FILES["file1"]["type"]=="audio/mpeg" || $_FILES["file1"]["type"]=="mp3/mp3") && $_FILES["file1"]["size"]<5000000)    {        //找到檔案存放的位置        $file1name = "./file/".date("YmdHis").$_FILES["file1"]["name"];  //加 .  拼接        //轉換編碼格式        $file1name = iconv("UTF-8","gb2312",$file1name);        //判斷檔案是否存在        if(file_exists($file1name))        {            echo "該檔案已存在!";        }        else        {        //儲存檔案        move_uploaded_file($_FILES["file1"]["tmp_name"],$file1name);                   //移動上傳檔案        $yy = $file1name;            }    }    else    {        echo "檔案類型不正確";    }}//          視頻//判斷檔案上傳是否出錯if($_FILES["file2"]["error"]){    echo $_FILES["file2"]["error"];}else{    //控制上傳檔案類型    if(($_FILES["file2"]["type"]=="video/mp4" || $_FILES["file2"]["type"]=="mp4/mp4") && $_FILES["file2"]["size"]<500000000)    {        //找到檔案存放的位置        $file2name = "./file/".date("YmdHis").$_FILES["file2"]["name"];  //加 .  拼接        //轉換編碼格式        $file2name = iconv("UTF-8","gb2312",$file2name);        //判斷檔案是否存在        if(file_exists($file2name))        {            echo "該檔案已存在!";        }        else        {        //儲存檔案        move_uploaded_file($_FILES["file2"]["tmp_name"],$file2name);                   //移動上傳檔案        $sp = $file2name;            }    }    else    {        echo "檔案類型不正確";    }}

這裡主要檔案類型是你剛才列印 出來的type  ,如果剛才提交的不是MP4格式的檔案,則它輸出的類型也不一樣,

點擊上傳

這裡出現的type就是另一種類型

所以你想提交哪種類型的,就一定對應好,否則會提示檔案類型不正確的

接下來寫一下完整的處理頁面的代碼吧

<?php$wz = $_POST["wz"];//var_dump($_FILES["file"]);   //索引寫它的name值//var_dump($_FILES["file1"]);//var_dump($_FILES["file2"]);include("DBDA.php");$dx = new DBDA();//       圖片//判斷檔案上傳是否出錯if($_FILES["file"]["error"]){    echo $_FILES["file"]["error"];}else{    //控制上傳檔案類型    if(($_FILES["file"]["type"]=="image/jpeg" || $_FILES["file"]["type"]=="image/png") && $_FILES["file"]["size"]<1024000)    {        //找到檔案存放的位置        $filename = "./file/".date("YmdHis").$_FILES["file"]["name"];  //加 .  拼接        //轉換編碼格式        $filename = iconv("UTF-8","gb2312",$filename);        //判斷檔案是否存在        if(file_exists($filename))        {            echo "該檔案已存在!";        }        else        {        //儲存檔案        move_uploaded_file($_FILES["file"]["tmp_name"],$filename);                   //移動上傳檔案          $tp = $filename;          }    }    else    {        echo "檔案類型不正確";    }}if($_FILES["file1"]["error"]){    echo $_FILES["file1"]["error"];}else{    //控制上傳檔案類型    if(($_FILES["file1"]["type"]=="audio/mpeg" || $_FILES["file1"]["type"]=="mp3/mp3") && $_FILES["file1"]["size"]<5000000)    {        //找到檔案存放的位置        $file1name = "./file/".date("YmdHis").$_FILES["file1"]["name"];  //加 .  拼接        //轉換編碼格式        $file1name = iconv("UTF-8","gb2312",$file1name);        //判斷檔案是否存在        if(file_exists($file1name))        {            echo "該檔案已存在!";        }        else        {        //儲存檔案        move_uploaded_file($_FILES["file1"]["tmp_name"],$file1name);                   //移動上傳檔案        $yy = $file1name;            }    }    else    {        echo "檔案類型不正確";    }}//          視頻//判斷檔案上傳是否出錯if($_FILES["file2"]["error"]){    echo $_FILES["file2"]["error"];}else{    //控制上傳檔案類型    if(($_FILES["file2"]["type"]=="application/octet-stream" || $_FILES["file2"]["type"]=="flv/qsv") && $_FILES["file2"]["size"]<500000000)    {        //找到檔案存放的位置        $file2name = "./file/".date("YmdHis").$_FILES["file2"]["name"];  //加 .  拼接        //轉換編碼格式        $file2name = iconv("UTF-8","gb2312",$file2name);        //判斷檔案是否存在        if(file_exists($file2name))        {            echo "該檔案已存在!";        }        else        {        //儲存檔案        move_uploaded_file($_FILES["file2"]["tmp_name"],$file2name);                   //移動上傳檔案        $sp = $file2name;            }    }    else    {        echo "檔案類型不正確";    }}$sql = "insert into tp values(‘‘,‘{$tp}‘,‘{$yy}‘,‘{$sp}‘,‘{$wz}‘)";         $r = $dx->Query($sql,0);         if($r)         {          echo "提交成功";                   }         else         {            echo "提交失敗";           }

 

你在寫之前最好列印一下你要提交視頻的類型是什麼,還有音樂也是

我所用的資料庫是這個

還有一點很重要的是,檔案名稱不要含有漢字,。

在同一目錄下建立一個file檔案夾,你所有提交的檔案將都會儲存在這個檔案夾裡

下面來試一下吧

點擊上傳

 

提交成功

看一下資料庫裡

 

添加成功!

如果需要的話,把這些資料遍曆讀出就可以了。

php表單提交 圖片、音樂、視頻、文字,四種類型共同提交到資料庫

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.