我希望能够通过简单的上传脚本在我的服务器上上传WebM文件。我目前能够成功地将jpg和png上传到服务器并将它们写入我的sql数据库,但是当使用WebM时,文件无法成功上传。但是,它会创建一个文件名并将我重定向到该文件,但它显然不存在。以下是用于上载WebM文件的代码部分。任何帮助将不胜感激。
if($file['type'] == "video/webm")
{
$seed = str_split('abcdefghijklmnopqrstuvwxyz'.'ABCDEFGHIJKLMNOPQRSTUVWXYZ'); // and any other characters
shuffle($seed);
$rand = '';
foreach (array_rand($seed, 6) as $k)
$rand .= $seed[$k];
$filename = $rand.".webm";
$dir = "uploads/".$filename;
while(file_exists($dir))
{
$seed = str_split('abcdefghijklmnopqrstuvwxyz'.'ABCDEFGHIJKLMNOPQRSTUVWXYZ'); // and any other characters
shuffle($seed);
$rand = '';
foreach (array_rand($seed, 6) as $k)
$rand .= $seed[$k];
$filename = $rand.".webm";
$dir = "u/".$filename;
}
$host="localhost";
$username="";
$password="";
$db_name="removed";
$tbl_name="removed";
$ipaddress = $_SERVER['REMOTE_ADDR'];
mysql_connect("$host", "$username", "$password")or die("cannot connect server ");
mysql_select_db("$db_name")or die("cannot select DB");
$datetime=date("y-m-d h:i:s");
$sql="INSERT INTO $tbl_name(filename, datetime)VALUES('$filename', '$datetime')";
$result=mysql_query($sql);
mysql_close();
move_uploaded_file($file['tmp_name'], $dir);
header( 'Location: u/'.$filename ) ;
}
我认为它与我定义文件类型的方式有关,但我无法在互联网上找到任何有关它的信息。视频/ webm是正确的定义吗?我不知道。
感谢。