【发布时间】:2016-06-13 21:03:35
【问题描述】:
表格:
<form enctype="multipart/form-data" action="FileUpload.php" method="post">
<label for="file" class="myLabel">Select File</label>
<input type="file" id="file" name="fileUpload">
<input type="submit" class="submit" value="Upload File">
</form>
php:
if(isset($_FILES['fileUpload'])){
$uploadName = $_FILES['fileUpload']['name'];
$uploadTmp = $_FILES['fileUpload']['tmp_name'];
$fileSize = $_FILES['fileUpload']['size'];
$fileType = pathinfo($uploadName, PATHINFO_EXTENSION);
$uploadName = trim($uploadName, "." . $fileType);
$uploadName = preg_replace("#[^a-z0-9.]#i","",$uploadName);//removes all spaces in their name
$uploadName = mt_rand(100000,999999) . "____" . $uploadName;//generates random number in front of name so multiple files of the smae name can be uploaded
if(($fileSize > 100024352638512 )){//check file is less than 10gb
die("Error - File to big");
}
if(!$uploadTmp){//checks to see if file is selected
die("No File Selected, Please Upload Again");
}else{
move_uploaded_file($uploadTmp,"uploads/$uploadName");//puts file into uploads directory
}
$sql = $con->query("INSERT INTO uploads (ID, Time ,Name, Type, Owner) VALUE
(NULL,CURRENT_TIMESTAMP(),'{$uploadName}','{$fileType}','{$_SESSION['UserID']}')")or die(mysqli_error($con));//inserts file into database
header("Location:Profile.php");//sends you to profile page
}
代码执行到最后,但文件没有上传到数据库,我之前有 php 工作,但我改变了输入按钮的工作方式,现在它不起作用。我将不胜感激,因为我还是一个新开发者。
【问题讨论】:
-
您希望实际文件进入数据库还是只是文件名?