2017-08-23 123 views
1

我有一個PHP/JS文件上傳,我想在視頻流100%上傳之前進行流式傳輸。PHP流文件從臨時路徑?

我是怎麼做到的?

fileupload.html(JS,uploadFile()):

var file = document.getElementById("file1").files[0]; 
var formdata = new FormData(); 
formdata.append("file1", file); 
var ajax = new XMLHttpRequest(); 
ajax.upload.addEventListener("progress", progressHandler, false); 
ajax.open("POST", "file_upload_parser.php"); 
ajax.send(formdata); 

fileupload.html(HTML)

<form id="upload_form" enctype="multipart/form-data" method="post"> 
    <input class="fileUpload" type="file" name="file1" id="file1"><br> 
    <input id="uploadBtn" type="button" value="Upload File" onclick="uploadFile()"> 
</form> 

file_upload_parser.php:

<?php 
$fileName = $_FILES["file1"]["name"]; 
$fileTmpLoc = $_FILES["file1"]["tmp_name"]; 

if(move_uploaded_file($fileTmpLoc, "uploads/$fileName")){ 
    echo "complete"; 
} 
?> 

VideoStream.php: https://gist.github.com/ranacseruet/9826293

streamer.php

<?php 
    $path = $_GET['path']; 
    include "VideoStream.php"; 
    $stream = new VideoStream($path); 
    $stream->start();exit; 
?> 

<video controls preload="auto" src="<?php echo $path ?>" width="100%"></video> 
+0

要不要我告訴你我做到這一點? –

+0

是的,這將是非常好的! – Alwin07

+0

發生了什麼事? –

回答

0

好了,所以你想向人們展示他們上傳視頻前,他們選擇什麼樣的預覽。

HTML & JavaScript代碼

(function Preview_Video() { 
 
\t 'use strict' 
 
    var URL = window.URL || window.webkitURL 
 
    
 
    
 
    var Play_Video = function (event) { 
 
    var file = this.files[0] 
 
    var type = file.type 
 
    var videoNode = document.querySelector('video') 
 
    var fileURL = URL.createObjectURL(file) 
 
    videoNode.src = fileURL 
 
    } 
 
    
 
    var inputNode = document.querySelector('input') 
 
    inputNode.addEventListener('change', Play_Video, false) 
 
})()
<div id="video"></div> 
 
<video controls autoplay></video> 
 

 
<form method="POST" name="form"> 
 
<input type="file" name="media-vid" accept="video/*"/> 
 
<input type="submit" name="submit" value="submit"/> 
 
</form>

只需使用此代碼,你會好的。

示例圖片從我的網站/屏幕:
enter image description here

+0

謝謝你,你的回答已經解決了我的問題! – Alwin07

+0

歡迎您。樂於幫助! –