照片上传不能上传大于2MB的文件 [英] Photo upload not uploading files bigger than 2MB
本文介绍了照片上传不能上传大于2MB的文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个php文件上传,其中表单目标是一个iframe。
它上传小于2mb的文件。但是更大的东西不会上传。
< div id =upload_wrapper>我不能在代码中看到任何原因。
< h3>个人资料图片上传< / h3>
< form id =uploadname =uploadenctype =multipart / form-datamethod =postaction =index.phptarget =upload_target>
< input name =foldertype =hiddenvalue =<?php echo $ folder?> />
< input name =filenametype =hiddenvalue =<?php echo $ filename?> />
< input name =uploaded_filetype =filesize =5120id =uploaded_file/>
< input id =sentname =senttype =submitvalue =Upload/>
< / form>
< / div>
< div id =loadingstyle =background:url(ajax-loader.gif)no-repeat left; height:50px; width:370px; display:none;>
< p style =margin-left:40px; padding-top:15px;>正在上传档案...请稍候< / p>
< / div>
< div id =image_wrapperstyle =display:none;>< p id =preview>< / p>< / div>
< iframe id =upload_targetname =upload_targetstyle =width:10px; height:10px; display:none>< / iframe>
< / div>
继承人php上传代码
<$ p $($ _SERVER ['REQUEST_METHOD'] =='POST'){
$ targetFolder = $ _POST ['folder']。 /;
$ filename2 = $ _POST ['filename'];
if(!is_dir($ targetFolder))
{
mkdir($ targetFolder,0777);
}
$ tempFile = $ _FILES ['uploaded_file'] ['tmp_name'];
$ targetPath = dirname(__ FILE__)。 '/'。 $ targetFolder;
$ targetFile = rtrim($ targetPath,'/')。 '/'。 $ _FILES [ uploaded_file] [名];
//验证文件类型
$ fileTypes = array('jpg'); //文件扩展名
$ fileParts = pathinfo($ _ FILES ['uploaded_file'] ['name']);
if(in_array($ fileParts ['extension'],$ fileTypes))
{
$ uploadfile = $ targetFolder。 basename($ filename2。。。$ fileParts ['extension']);
move_uploaded_file($ tempFile,$ uploadfile);
$ fileName = $ uploadfile;
}
echo< div id ='filename'> $ fileName< / div>;
解决方案
你的PHP服务器的配置将有所帮助(例如10MB):
ini_set('upload_max_filesize','10M');
I have a php file upload in place in which the forms target is an iframe.
It uploads files less than 2mb fine. But anything larger it will not upload. I cant see any reason behind this in the code.
<div id="upload_wrapper">
<img src="../images/logo.png" alt="logo5" width="" height="" style="padding:0px;" />
<h3>Profile picture upload</h3>
<form id="upload" name="upload" enctype="multipart/form-data" method="post" action="index.php" target="upload_target">
<input name="folder" type="hidden" value="<?php echo $folder ?>" />
<input name="filename" type="hidden" value="<?php echo $filename ?>" />
<input name="uploaded_file" type="file" size="5120" id="uploaded_file" />
<input id="sent" name="sent" type="submit" value="Upload" />
</form>
</div>
<div id="loading" style="background:url(ajax-loader.gif) no-repeat left; height:50px; width:370px; display:none;">
<p style="margin-left:40px; padding-top:15px;">Uploading File... Please wait</p>
</div>
<div id="image_wrapper" style="display:none;"><p id="preview"></p></div>
<iframe id="upload_target" name="upload_target" style="width:10px; height:10px; display:none"></iframe>
</div>
And heres the php upload code
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$targetFolder = $_POST['folder'] . "/";
$filename2 = $_POST['filename'];
if (!is_dir($targetFolder))
{
mkdir($targetFolder, 0777);
}
$tempFile = $_FILES['uploaded_file']['tmp_name'];
$targetPath = dirname(__FILE__) . '/' . $targetFolder;
$targetFile = rtrim($targetPath,'/') . '/' . $_FILES['uploaded_file']['name'];
// Validate the file type
$fileTypes = array('jpg'); // File extensions
$fileParts = pathinfo($_FILES['uploaded_file']['name']);
if (in_array($fileParts['extension'],$fileTypes))
{
$uploadfile = $targetFolder. basename($filename2 .".".$fileParts['extension']);
move_uploaded_file($tempFile,$uploadfile);
$fileName = $uploadfile;
}
echo "<div id='filename'>$fileName</div>";
}
解决方案
Maybe changing your php server's configuration would help (example for 10MB):
ini_set('upload_max_filesize', '10M');
这篇关于照片上传不能上传大于2MB的文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文