当前位置:Gxlcms > PHP教程 > 在调试一个上传文件并保存在数据库里的小程序,始终出现有关问题,向这里的大神请问

在调试一个上传文件并保存在数据库里的小程序,始终出现有关问题,向这里的大神请问

时间:2021-07-01 10:21:17 帮助过:29人阅读

在调试一个上传文件并保存在数据库里的小程序,始终出现问题,向这里的大神请教!
其实这个功能应该很简单,我从网上看到一段程序,自己弄下来调试调试,但出现意想不到的错误,请大神指教啊。

html前端代码:








php后端代码:

if ($_FILES ['file'] != "none" && $_FILES ['file'] != "")
{
$time_limit = 60;
set_time_limit ( $time_limit );

$file_type = $_FILES ['file'] ['type'];
$file_name = $_FILES ['file'] ['name'];
$file_size = $_FILES ['file'] ['size'];
$fp = fopen ( $_FILES ['file'] ['tmp_name'], "rb" );

if (! $fp)
{
die ( "file open error" );
}

$file_data = file_get_contents($_FILES["file"]['tmp_name']);
//$file_data = fread($fp, $file_size ) ;
fclose ( $fp );
$conn = mysqli_connect ( "localhost", "root", "root" );
if (! $conn)
{
die ( "error : mysql connect failed" );
}
mysqli_select_db($conn,"onlytest" );
$sql = "insert into onlytest.file (contents,type,name,size) values ('$file_data','$file_type','$file_name','$file_size')";
$result = mysqli_query ($conn, $sql);
//$id = mysqli_insert_id ($conn);
//echo $id;
mysqli_close ( $conn );
set_time_limit ( 30 );
if ($result)
echo "succeed to upload the files ";
else
echo "failed!";

}
else
{
echo "You haven't uploaded any files!";
}
?>


数据库为onlytest,表格名为file,几个关键词为id, contents,type,name,size,设置如下:

------解决方案--------------------
错误信息是什么?
------解决方案--------------------
你的配置最大允许上传的多大的?
------解决方案--------------------
可以打印出sql语句是什么呢?
------解决方案--------------------
过滤下吧。 把$file_data加一个mysql_escape_string函数

人气教程排行