gpt4 book ai didi

php 文件上传错误 1 ​​- 使用 php_ini 的正确方法是什么?

转载 作者:可可西里 更新时间:2023-10-31 22:47:05 25 4
gpt4 key购买 nike

我在将 pdf 上传到我的服务器时遇到问题。 upload_max_filesize 为 2M,文件更大,大约 4M。我在这里找到了一个与我的问题类似的帖子

$_FILE upload large file gives error 1 even though upload_max_size is bigger than the file size

我可以从 php.net 收集到关于 ini_set 命令正确用法的信息,我目前正在使用它。

    ini_set('upload_max_filesize', 100000000);
ini_set('post_max_size', 110000000);
ini_set('memory_limit', 120000000);
ini_set('max_input_time', 20);

但在我发布的链接中,他们似乎使用了不同的方法(如果他们不只是总结正确的代码的话)。但似乎我的代码也无法正常工作。我有<?php phpinfo(); ?>在我页面的底部,它说 upload_max_filesize 仍然是 2M。我是否为 ini_set 使用了正确的语法?还是我的 pdf 上传有其他问题?

我处理上传的代码是

    //======================pdf upload=====================     
if ($_POST['erasePDF'] == "Yes") //checking if erase box was checked and erasing if true
{
if (file_exists($pdf))
{
unlink( $pdf );
$pdf = "";
}
}

print_r($_FILES['pdf']);
if (!empty($_FILES['pdf']['name'])) //checking if file upload box contains a value
{
$saveDirectoryPDF = 'pdfs/'; //name of folder to upload to
$tempName = $_FILES['pdf']['tmp_name']; //getting the temp name on server
$pdf = $_FILES['pdf']['name']; //getting file name on users computer

$test = array();
$test = explode(".", $pdf);
if((count($test) > 2) || ($test[1] != "pdf" && $test[1] != "doc" && $test[1] != "docx")){
echo "invalid file";
}else{

$count = 1;
do{
$location = $saveDirectoryPDF . $count . $pdf;
$count++;
}while(is_file($location));

if (move_uploaded_file($tempName, $location)) //Moves the temp file on server
{ //to directory with real name
$pdf = $location;
}
else
{

echo "hi";
echo '<h1> There was an error while uploading the file.</h1>';
}
}
}else{
$pdf = "";
}
if(isset($_POST['link']) && $_POST['link'] != ""){
$pdf = $_POST['link'];
}
//======================end of pdf upload==============

'print_r($_FILES['pdf']);'行的输出是

    Array ( [name] => takeoutmenu.pdf [type] => [tmp_name] => [error] => 1 [size] => 0 )

最佳答案

有些供应商不允许您在运行时更改某些值。取而代之的是,尝试在真实的 php.ini 文件中更改它或使用 .htaccess(对于 Apache Web 服务器),您可以在其中添加配置。您可以在有关此主题的 PHP.net 文章中找到更多信息:How to change configuration settings .

根据您的故事,例如 .htaccess

<IfModule mod_php5.c>
php_value upload_max_filesize 100000000
php_value post_max_size 110000000
php_value memory_limit 120000000
php_value max_input_time 20
</IfModule>

关于php 文件上传错误 1 ​​- 使用 php_ini 的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8216085/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com