首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用PHP/MySQL将视频上传到文件夹及其到数据库的链接

使用PHP/MySQL将视频上传到文件夹及其到数据库的链接
EN

Stack Overflow用户
提问于 2013-11-15 14:29:04
回答 3查看 20.7K关注 0票数 0

我正在尝试上传视频并将其保存在文件夹中,并将其路径保存在数据库中,但视频没有插入到特定的文件夹中。

我搜索了很多,找到了一些代码。代码正在为图像工作。我做了一些修改,从图像到视频,但这不起作用。

以下是我的代码的一部分。

代码语言:javascript
复制
<form action="" method="post" enctype="multipart/form-data">
<div class="form_search">
<label>Upload Video Profile:</label>
<span class="form_input">
<input type="file" name="uploadvideo"  />
</span>
</div>

<div class="form_search">
<label> &nbsp;</label>
<span class="form_input">
<input type="submit" name="submitdetails" value="Upload" class="button"/>
</span>
</div>
</form>

我上传视频的php代码是

代码语言:javascript
复制
<?php
if(isset($_POST['submitdetails']))
{
$name=$_FILES['uploadvideo']['name'];
$type=$_FILES['uploadvideo']['type'];
//$size=$_FILES['uploadvideo']['size'];
$cname=str_replace(" ","_",$name);
$tmp_name=$_FILES['uploadvideo']['tmp_name'];
$target_path="company_profile/";
$target_path=$target_path.basename($cname);
if(move_uploaded_file($_FILES['uploadvideo']['tmp_name'],$target_path))
{
    echo "hi";
echo $sql="UPDATE employer_logindetails SET (video) VALUES('".$cname."')"; 
$result=mysql_query($sql);
echo "Your video ".$cname." has been successfully uploaded";
}

}

?>

我哪里出了问题,请帮帮我。

我所有的php.ini修改都完成了,视频大小只有7mb。

EN

回答 3

Stack Overflow用户

发布于 2013-11-15 14:53:19

第1步

此脚本将允许您上传文件从您的浏览器到您的主机,使用PHP。我们需要做的第一件事是创建一个HTML表单,允许人们选择他们想要上传的文件。

代码语言:javascript
复制
 <form enctype="multipart/form-data" action="upload.php" method="POST">
 Please choose a file: <input name="uploaded" type="file" /><br />
 <input type="submit" value="Upload" />
 </form> 

此表单将数据发送到文件"upload.php",这是我们接下来要创建的文件,用于实际上传文件。

第2步

实际的文件上传非常简单:

代码语言:javascript
复制
<?php 
 $target = "upload/"; 
 $target = $target . basename( $_FILES['uploaded']['name']) ; 
 $ok=1; 
 if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target)) 
 {
 echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded";
 } 
 else {
 echo "Sorry, there was a problem uploading your file.";
 }
 ?> 

这段非常小的代码将上传HTML表单发送给它的文件。

代码语言:javascript
复制
The first line $target = "upload/"; is where we assign the folder that files will be uploaded to. As you can see in the second line, this folder is relative to the upload.php file. So for example, if your file was at www.yours.com/files/upload.php then it would 

上传文件到www.yours.com/ files / upload /yourfile.gif。一定要记得创建这个文件夹!拥有777的权利

第3步

代码语言:javascript
复制
 if ($uploaded_size > 350000)
 {
 echo "Your file is too large.<br>"; 
 $ok=0;
 } 

假设您没有更改HTML表单中的表单域(因此它仍然被命名为uploaded),这将检查文件的大小。如果文件大于350k,则会出现文件太大错误,并且我们将$ok设置为等于0。

如果愿意,您可以通过将350000更改为不同的数字来将此行更改为更大或更小的大小。或者,如果您不关心文件大小,只需省略这些行

代码语言:javascript
复制
We are not using $ok=1; at the moment but we will later in the tutorial.

We then move the uploaded file to where it belongs using move_uploaded_file (). This places it in the directory we specified at the beginning of our script. If this fails the user is given an error message, otherwise they are told that the file has been uploaded.

把所有的东西放在一起

代码语言:javascript
复制
<?php 
 $target = "upload/"; 
 $target = $target . basename( $_FILES['uploaded']['name']) ; 
 $ok=1; 

 //This is our size condition 
 if ($uploaded_size > 350000) 
 { 
 echo "Your file is too large.<br>"; 
 $ok=0; 
 } 

 //This is our limit file type condition 
 if ($uploaded_type =="text/php") 
 { 
 echo "No PHP files<br>"; 
 $ok=0; 
 } 

 //Here we check that $ok was not set to 0 by an error 
 if ($ok==0) 
 { 
 Echo "Sorry your file was not uploaded"; 
 } 

 //If everything is ok we try to upload it 
 else 
 { 
 if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target)) 
 { 
 echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded"; 
 } 
 else 
 { 
 echo "Sorry, there was a problem uploading your file."; 
 } 
 } 
 ?>

显然,如果你允许文件上传,你就会让人们上传很多不想要的东西。一种预防措施是不允许他们上传任何可能包含恶意代码的php、html、cgi等文件。这提供了更多的安全,但不能确保防火。

票数 2
EN

Stack Overflow用户

发布于 2013-11-15 14:37:12

试试这个:$_FILES‘’userfile‘代替$_FILES’‘uploadvideo’everywhere。

票数 0
EN

Stack Overflow用户

发布于 2013-11-15 14:38:50

我看不到你的表格里有任何带有uploadvideo的名字。

但是在php中你使用的是$_FILES['uploadvideo']

尝试给出输入文件的确切名称

例如:

代码语言:javascript
复制
<input type="file" name="uploadvideo">
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19994847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档