很多站长朋友们都不太清楚php上传error6,今天小编就来给大家整理php上传error6,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php文件上传,提示移动文件失败 2、 php 文件上传error 错误为6 ,找不到临时文件 ,怎么解决? 3、 php 上传文件 4、 php上传文件错误怎么解决 5、 php文件上传无响应 6、 PHP在上传文件的时候出现错误Internal Server Error php文件上传,提示移动文件失败php文件上传,提示移动文件失败,基本是上传保存的目录不可写造成的,需要好好设置一下,下面是一个PHP文件上传的简单例子,仅作参考:
<form action="" enctype="multipart/form-data" method="post"
name="uploadfile">上传文件:<input type="file" name="upfile" /><br>
<input type="submit" value="上传" /></form>
<?php
//print_r($_FILES["upfile"]);
if(is_uploaded_file($_FILES['upfile']['tmp_name'])){
$upfile=$_FILES["upfile"];
//获取数组里面的值
$name=$upfile["name"];//上传文件的文件名
$type=$upfile["type"];//上传文件的类型
$size=$upfile["size"];//上传文件的大小
$tmp_name=$upfile["tmp_name"];//上传文件的临时存放路径
//判断是否为图片
switch ($type){
case 'image/pjpeg':$okType=true;
break;
case 'image/jpeg':$okType=true;
break;
case 'image/gif':$okType=true;
break;
case 'image/png':$okType=true;
break;
}
if($okType){
/**
* 0:文件上传成功<br/>
* 1:超过了文件大小,在php.ini文件中设置<br/>
* 2:超过了文件的大小MAX_FILE_SIZE选项指定的值<br/>
* 3:文件只有部分被上传<br/>
* 4:没有文件被上传<br/>
* 5:上传文件大小为0
*/
$error=$upfile["error"];//上传后系统返回的值
echo "================<br/>";
echo "上传文件名称是:".$name."<br/>";
echo "上传文件类型是:".$type."<br/>";
echo "上传文件大小是:".$size."<br/>";
echo "上传后系统返回的值是:".$error."<br/>";
echo "上传文件的临时存放路径是:".$tmp_name."<br/>";
echo "开始移动上传文件<br/>";
//把上传的临时文件移动到up目录下面
move_uploaded_file($tmp_name,'up/'.$name);
$destination="up/".$name;
echo "================<br/>";
echo "上传信息:<br/>";
if($error==0){
echo "文件上传成功啦!";
echo "<br>图片预览:<br>";
echo "<img src="/data/upload/help/202303/02/be758db627897e566632767a4cda845e.">";
//echo " alt=\"图片预览:\r文件名:"/data/upload/help/202303/02/be758db627897e566632767a4cda845e."\r上传时间:\">";
}elseif ($error==1){
echo "超过了文件大小,在php.ini文件中设置";
}elseif ($error==2){
echo "超过了文件的大小MAX_FILE_SIZE选项指定的值";
}elseif ($error==3){
echo "文件只有部分被上传";
}elseif ($error==4){
echo "没有文件被上传";
}else{
echo "上传文件大小为0";
}
}else{
echo "请上传jpg,gif,png等格式的图片!";
}
}
?>
php 文件上传error 错误为6 ,找不到临时文件 ,怎么解决?文件过大~看看是不是图片大于2M了~~~~
设置下 PHP.INI里面的文件大小设置
php 上传文件刚学php时写的一个类,可以给你参考下,你所说的功能基本上也都有。
这个用作学习还是不错的。
<?php
class fileup{
private $savefilepath; //保存路径
private $filetype=array('gif','jpg','jpeg','png'); //文件类型
private $maxsize=1000000; //上传最大的尺寸 默认值设置为1M
private $savename=true; //是否默认随机名称
private $upfileform; //上传文件表单的name值
//以下是不可以修改的成员属性
private $tmpname; //上传的临时文件名
private $upfilename; //上传文件的名称
private $uperror;
private $newname; //新的文件名
//private $upfiletype; //上传文件的类型
private $upfilesize; //上传文件的大小。
private $filehz; //文件名的扩展名。
//构造方法
function __construct($upfileform,$savefilepath='./upload/'){
$this->upfileform=$upfileform;
$this->savefilepath=rtrim($savefilepath,'/');
$this->tmpname=$_FILES[$upfileform]['tmp_name'];
$this->upfilename=$_FILES[$upfileform]['name'];
$this->upfilesize=$_FILES[$upfileform]['size'];
$this->uperror=$_FILES[$upfileform]['error'];
$this->getnewname();
}
//设置文件上传的参数,不设置为默认值。
function setfilepar($par){
$pars=array('filetype','maxsize','savename');
foreach($par as $key=>$value){
if(in_array($key,$pars)){
$this->$key=$value;
}else{
continue;
}
}
}
//检查上传
private function checkfileup(){
//判断文件夹是否正确或文件夹是否有可写入的权限。
if(!is_dir($this->savefilepath)||!is_writable($this->savefilepath)){
$this->uperror=8;
return false;
}
//判断文件名是否存在
if(is_file($this->newname)){
$this->uperror=9;
return false;
}
//判断上传文件的类型是否正确。
if(!in_array(strtolower($this->filehz),$this->filetype)){
$this->uperror=-1;
return false;
}
return true;
}
//获取新的文件名字
private function getnewname(){
$tmp=explode('.',$this->upfilename);
$this->filehz=$tmp[count($tmp)-1];
if(is_bool($this->savename)){
if($this->savename){
$this->newname=$this->savefilepath.'/'.date('YmdHis').rand(10000,99999).'.'.$this->filehz;
}else{
$this->newname=$this->savefilepath.'/'.$this->upfilename;
}
}else{
$this->newname=$this->savefilepath.'/'.$this->savename.'.'.$this->filehz;
}
}
//获取错误信息
private function getuperror(){
switch($this->uperror){
case 1: echo '上传文件超过了系统指定的大小'; break;
case 2: echo '上传文件超过了表单中指定的大小'; break;
case 3: echo '文件只有部分上传'; break;
case 4: echo '没有文件上传'; break;
case 6: echo '找不到上传的文件,系统错误'; break;
case 7: echo '文件写入失败'; break;
case 8: echo '文件路径不存在,或不可写'; break;
case 9: echo '文件名已经存在,请不要重复上传'; break;
case -1: echo '不是指定上传的文件'; break;
case -2: echo '请勿使用非法途径上传'; break;
case -3: echo '文件上传失败'; break;
default: '未知错误'; break;
}
}
function fileupload(){
if(!$this->checkfileup()||$this->uperror!=0){
$this->getuperror();
return false;
}else{
if(!is_uploaded_file($_FILES[$this->upfileform]['tmp_name'])){
$this->uperror=-2;
$this->getuperror();
return false;
}else{
if(move_uploaded_file($_FILES[$this->upfileform]['tmp_name'],$this->newname)){
return true;
}else{
$this->uperror=-3;
return false;
}
}
}
}
//获取文件名
function getname(){
return $this->newname;
}
}
php上传文件错误怎么解决<html>
<body>
<form enctype="multipart/form-data" action="upload.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
Choose a file to upload: <input name="uploaded_file" type="file" />
<input type="submit" value="Upload" />
</form>
</body>
</html>
有一些规则需要建设时遵循HTML表单。首先,请确保该窗体使用POST方法。第二,形
式需要以下属性:字符编码=“多重/表单数据”。它指定的内容类型时使用的信息提
交给伺服器。如果没有这些要求,您的文件上传不了。
另一个需要注意的是隐藏的表单字段名为MAX_FILE_SIZE设置的值。某些Web浏览器实
际上反映了这个领域,也不会允许用户上载文件超过这个数字(字节)更大。您应该
将此值设置为配合最大上传大小,在php.ini文件中设置。这是一套与中
upload_max_filesize,默认值是2MB的。但它仍然不能保证你的脚本将不会转交了尺
寸较大的文件。危险的是,攻击者将尝试向您发送一个请求几个大文件,并填写了文
件系统,也就是PHP存储解码文件。设置在php.ini的post_max_size的指令文件的最大
尺寸,你要(必须大于中upload_max_filesize)。默认值为10MB的。此指令控制的所
有要求,在一个允许的POST数据最大大小。另外,还要确保在你的php.ini文件
file_uploads设置为On。
至少,有一个在输入标记属性看:类型=“文件”。它是用来指定为文件选择控制输入
元素。这提供了一个文件的URI的地方,则需要键入一个“浏览”按钮,可作为替代的
URI输入使用。
在用户进入一个文件的URI,并点击提交按钮的文件的副本将被发送到服务器和用户将
被重定向到upload.php。此PHP文件将处理表单数据。
返回页首
处理表单数据(PHP代码)
当文件被上传和PHP创建了一个文件的临时副本,并建立了超全局变量$ _FILES数组,
包含有关文件的信息。对于每个文件,有5个数据。我们已上传字段命名
为'uploaded_file',所以会存在以下数据:
变量$ _FILES [“uploaded_file”] [“name”]从用户的机器上载的文件的原名称
变量$ _FILES [“uploaded_file”] [“type”]的上传文件的MIME类型(如果浏览器
提供的类型)
变量$ _FILES [“uploaded_file”] [“size”]的以字节为单位上传的文件大小
变量$ _FILES [“uploaded_file”] [“tmp_name”],在该文件暂时存储在服务器上
的位置
变量$ _FILES [“uploaded_file”] [“error”]错误代码从文件上传结果
下面的例子接受一个上传的文件并保存在上载目录中。它允许根据350Kb上传只有JPEG
图像。该代码本身,是相当清楚的,但我们会作出一些解释。有一个例子在外观和保
存此为upload.php PHP代码。
<?php
//Сheck that we have a file
if((!empty($_FILES["uploaded_file"])) ($_FILES['uploaded_file']['error']
== 0)) {
//Check if the file is JPEG image and it's size is less than 350Kb
$filename = basename($_FILES['uploaded_file']['name']);
$ext = substr($filename, strrpos($filename, '.') + 1);
if (($ext == "jpg") ($_FILES["uploaded_file"]["type"] == "image/jpeg")
($_FILES["uploaded_file"]["size"] < 350000)) {
//Determine the path to which we want to save this file
$newname = dirname(__FILE__).'/upload/'.$filename;
//Check if the file with the same name is already exists on the
server
if (!file_exists($newname)) {
//Attempt to move the uploaded file to it's new place
if ((move_uploaded_file($_FILES['uploaded_file']
['tmp_name'],$newname))) {
echo "It's done! The file has been saved as: ".$newname;
} else {
echo "Error: A problem occurred during file upload!";
}
} else {
echo "Error: File ".$_FILES["uploaded_file"]["name"]." already
exists";
}
} else {
echo "Error: Only .jpg images under 350Kb are accepted for upload";
}
} else {
echo "Error: No file uploaded";
}
?>
在此之前的上载您需要的文件,以确定文件是否真的上传任何东西。之后我们检查上
传的文件,JPEG图像,其大小小于350Kb的。接下来,我们确定的道路,这是我们要保
存此文件,并检查是否已经存在一个服务器上的这些文件的名称。当所有检查通过,
我们将文件复制到一个永久的位置使用move_upload_file()函数。此功能也证实该
文件你要过程,是一个合法的文件从用户上传结果。如果该文件上传成功,那么相应
的消息将出现。
注意:要确保PHP已经允许读取和写入临时文件中保存的位置是您要复制文件的目录。
这个例子其实很简单,它的提出是为了演示如何使用PHP上传文件。例如,您可以添加
新的条件,并允许上传GIF和PNG图像,或任何文件,您需要其他种类。如果您是本教
程使用PHP不熟悉可能是一个很好的起点。
php文件上传无响应文件上传时,须注意的是:表单form标签中添加enctype属性,enctype="multipart/form-data";
下面以一个具体的实例。。
1,先做一个文件上传页面,此页面可以是html页在,也可以是php页面。如
upload.html文件上传页面。 具体代码如下:
<html>
<head>
<title>文件上传</title>
<style>
.wjsc{
width:60%;
margin:20px auto;
border:1px solid black;
height:200px;
}
.wj{
margin:50px;
}
</style>
</head>
<body>
<div class="wjsc">
<form action="doAction1.php" method="post" enctype="multipart/form-data" class="wj">
<input type="file" name="pImg"/><br/>
<input type="submit" value="上传"/>
</form>
</div>
</body>
</html>
2,通过表单action="doAction.php"将upload.html文件提交至doAction.php进行处理。
通过$_FILES数组获取文件上传的相关信息。
$pImg=$_FILES['pImg'];
1,获得上传的文件名。
通过explode()函数,可得到上传的文件的扩展名。。
$extName=strtolower(end(explode('.',$pImg['name'])));
2,通过判断$pImg['error']的错误号,如果错误误为0,即:$pImg['error']==UPLOAD_ERR_OK
3;将上传的临时文件名移至指定的目标位置。
move_uploaded_file($pImg['tmp_name'],$dest);
具体代码如下:
<?php
header("content-type:text/html;charset=utf-8");
date_default_timezone_set("PRC");
$pImg=$_FILES['pImg'];
print_r($pImg);
if($pImg['error']==UPLOAD_ERR_OK){
//取得扩展名
$extName=strtolower(end(explode('.',$pImg['name'])));
//echo $extName;
$filename=date("Ymdhis").".".$extName;
//echo $filename;
$dest="uploads/".$filename;
move_uploaded_file($pImg['tmp_name'],$dest);
echo "上传成功";
}else{
echo "上传错误";
}
?>
PHP在上传文件的时候出现错误Internal Server Error我也遇到这个问题,当上传图片大于100K的时候就会出现这种状况!
打开Apache 的httpd.conf
找到<IfModule mod_fcgid.c>
在里面添加如下三行即可!
<IfModule mod_fcgid.c>
FcgidConnectTimeout 20
# to get around upload errors when uploading images increase the MaxRequestLen size to 15MB
MaxRequestLen 15728640
</IfModule>
关于php上传error6的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php上传error6 Php上传缩略图的详细内容...