ホームページ > バックエンド開発 > PHPの問題 > PHPでビデオアップロードを実装する方法

PHPでビデオアップロードを実装する方法

藏色散人
リリース: 2023-03-04 10:58:02
オリジナル
5540 人が閲覧しました

php でビデオをアップロードする方法: 最初に「php.ini」構成ファイルを開いて関連するパラメータを変更し、次に「XHR2」を使用してファイルを切り取ってアップロードし、ビデオ ファイルを目的の場所に移動します。 ;最後にビデオをデータベースに追加します。

PHPでビデオアップロードを実装する方法

# 推奨: 「

PHP ビデオ チュートリアル

php ビデオのアップロードは非常に簡単です

まず、ビデオは一般的に比較的大きいため、最初に PHP 構成を変更する必要があります。ここでは 2 つの方法を示します:

方法 1: php.ini を開きます。

内部のアップロード構成を変更し、次のパラメータを見つけて順番に変更します。

file_uploads = On
  upload_tmp_dir = "d:/fileuploadtmp"
  upload_max_filesize = 50M
  post_max_size = 100M
  max_execution_time = 600
  max_input_time = 600
  memory_limit = 128M
ログイン後にコピー

方法 2: PHP 関数を使用して

ini_get を変更します。 () php .ini の設定値を取得します

ini_set() は php.ini を設定します

50M の大きなファイルをアップロードするとします。 php.ini を次のように設定します:

file_uploads = On
 upload_tmp_dir = "d:/fileuploadtmp"
 upload_max_filesize = 50M
 post_max_size = 100M
 max_execution_time = 600
 max_input_time = 600
 memory_limit = 128M
ログイン後にコピー

ヒント:memory_limit > post_max_size > Upload_max_filesize

:::::::::: を維持する必要があります。 :: :ユニバーサル分割線:::::::::::::::::::::::::::::::::::::::: :::::::::::

前提: ビデオ ファイルが大きすぎるため、カットする必要があります

XHR2 を使用してファイルのカットとアップロードを実現します

具体的なコードは次のとおりです。

var fileobj = document.getElementByTagName('input')[i].files[0];//获取文件上传对象的文件资源
const SLICESIZE = 10 * 1024 * 1024;//每次切割的大小,这里是10MB//此处可做修改
var start = 0;   //初始化截取开始位置
var end = 0;   //初始化截取终止位置
totalsize = fileobj.size; //获取文件的总的大小
while(start < totalsize){ //利用while循环将文件进行截取提交
start = end ; //
end = start + SLICESIZE; //
 
var xhr = new XMLHttpRequest(); //创建ajax对象
 
var fd = new FormData(); //创建表单对象
 
var part = fileobj.slice(start,end);//对文件进行切割,两个参数
 
fd.append(&#39;name&#39;,part);//把切割文件打包进表单对象中以便发送,其中name的值就是服务器$_FILES[&#39;name&#39;]接受处的变量名
xhr.open(&#39;POST&#39;,&#39;test.php&#39;,false);//之所以关闭异步,是为了防止文件块送达服务器的顺序出错
 
xhr.send(fd);//把打包的数据发送
}
ログイン後にコピー

php ページに移動し、値

## の受信を開始します。

#この時点で、動画ファイルは、upload/data/videp/demo.mov に転送されます;

次は、これについて説明します ファイルを任意の場所に移動します

いつも move_uploaded_file の使用に失敗していたので (試してみてください)、この一時ファイルの名前を変更できないか疑問に思っていました。

I rename

を使用して保存してみますビデオをデータベースに保存します

最前面に表示するには、

{if $brand_video}
     <embed src="http://www.ecshop.com/data/video/{$brand_video}" sutostart=true loop=true width=800 height=600></embed>
{/if}
ログイン後にコピー

パラメータ分析: sutostart::自動再生するかどうか

Loop:: ループするかどうか

幅と高さについては何も言いません、誰もが知っています。

以上がPHPでビデオアップロードを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート