mysql blob只接受图像吗?
我一直在网上寻找能够上传不同格式的更大的文件大小,但我只遇到图像教程。
我有下面的代码,在 if
语句并返回 echo
当我上传不同的文件类型大于10兆(该列为 LONGBLOB
).
<?php
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 'On'); //On or Off
session_start();
require_once('connect.php');
if(isset($_POST['submit'])){
$file = rand(1000,100000)."-".$_FILES['file']['name'];
$notes = mysqli_real_escape_string($connection,$_POST['notes']);
$file_loc = $_FILES['file']['tmp_name'];
$file_size = $_FILES['file']['size'];
$file_type = $_FILES['file']['type'];
$email = mysqli_real_escape_string($connection, $_SESSION['email']);
$folder="uploads/";
move_uploaded_file($file_loc,$folder.$file);
$sql = "INSERT INTO `supportcontent` (`scontentdata`, `scontentnotes`, `suseremail`, `stype`,`ssize`)
VALUES( '$file','$notes','$email','$file_type ','$file_size')";
$current_id = mysqli_query($connection, $sql)
or die("<b>Error:</b> Problem on Image Insert<br/>" . mysqli_error($connection));
if (isset($current_id)) {
header("Location: landingpage.php?upload=success");
}
}
else{
echo 'file is 0';
}
?>
2条答案
按热度按时间js4nwp541#
您可以检查最大\u允许的\u数据包大小的值,并检查是否将其设置为大于10mb以处理您的情况。
e4yzc0pl2#
mysql blob只接受图像吗?
不,你可以在里面储存任何你想要的东西。当你试图上传一个超过10mb的文件时,失败的不是sql,而是php代码。或者:
文件大小限制。检查
upload_max_filesize
以及post_max_size
php.ini文件中的设置。或者手术超时。这很可能是罪魁祸首,特别是如果您从未更改php.ini文件中的默认值。php中的默认超时时间是30秒,因此必须在30秒内上载文件。您可以在php.ini文件中使用
max_execution_time
设置,或者最好在代码中使用set_time_limit()
功能。例如,要将超时设置为2分钟: