免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3190 | 回复: 10
打印 上一主题 下一主题

php 上传图片代码一直提示警告,求高手指教,急!!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-11-24 17:56 |只看该作者 |倒序浏览
运行一下代码,浏览器提示
Upload: en.jpg
Type: image/jpeg
Size: 54.5830078125 Kb
Temp file: /tmp/phpk0nLl5
Warning: move_uploaded_file(.upload/en.jpg): failed to open stream: No such file or directory in /var/www/html/bbs/upload_file.php on line 24 Warning: move_uploaded_file(): Unable to move '/tmp/phpk0nLl5' to '.upload/en.jpg' in /var/www/html/bbs/upload_file.php on line 24 Stored in: upload/en.jpg

求教,该怎样解决???我的代码运行在linux上



<form action="upload_file.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br/>
<input type="submit" name="submit" value="submit"/>
</form>


upload_file.php:


<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg")))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Type: " . $_FILES["file"]["type"] . "<br />";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

    if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
      }
    }
  }
else
  {
  echo "Invalid file";
  }
?>

论坛徽章:
0
2 [报告]
发表于 2012-11-24 22:17 |只看该作者
Unable to move '/tmp/phpk0nLl5' to '.upload/en.jpg'
  1. move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]);
复制代码
将upload的路径换成绝对路径,试试呢?

论坛徽章:
0
3 [报告]
发表于 2012-11-25 13:56 |只看该作者
谢谢!上传可以了!但是下面又遇到一个问题,就是我想把图片都重命名一下(方便使用),请问要在上面的代码中加写什么呢???

论坛徽章:
0
4 [报告]
发表于 2012-11-25 16:03 |只看该作者
回复 3# 张美英
move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
把上面语句中的 $_FILES["file"]["name"] 换成你想要的名字就可以了。
   

论坛徽章:
0
5 [报告]
发表于 2012-11-25 17:26 |只看该作者
改了之后还能找到上传的图片吗?

论坛徽章:
0
6 [报告]
发表于 2012-11-25 21:01 |只看该作者
设置一个变量存起来不就行了。或是你可以在表里面用两个字段来存其名称,一个字段存原来的名字,一个字段存你改过后的名字。

论坛徽章:
0
7 [报告]
发表于 2012-11-26 09:12 |只看该作者
谢谢你!今天试了一下,已经好了!

论坛徽章:
0
8 [报告]
发表于 2012-11-26 09:19 |只看该作者
分享一下你是怎么解决的?用的什么方法?

论坛徽章:
0
9 [报告]
发表于 2012-11-26 10:39 |只看该作者
其实我昨天整理的代码只差一步就可以实现我想要的功能了(我总这样,关键时刻掉链子…),把代码贴出来吧,呵呵
<?php

session_start();
if (!isset($_SESSION['user'])) {
            $_SESSION['user']="";
        exit;
}

if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))){


          if ($_FILES["file"]["error"] > 0){
                    echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
            }else{
                $filename=explode(".",$_FILES['file']['name']);//把上传的文件名以“.”好为准做一个数组。  
                $time=date("m-d-H-i-s");//去当前上传的时间  
                $filename[0]=$time;//取文件名t替换  
                $name=implode(".",$filename);
                    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
                    echo "Type: " . $_FILES["file"]["type"] . "<br />";
                    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
                    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

                    if (file_exists("upload/" . $_FILES["file"]["name"])){
                              echo $_FILES["file"]["name"] . " already exists. ";
                      }else{
                              move_uploaded_file($_FILES["file"]["tmp_name"],"upload/" . $name);
                              echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
                       
                        $db = mysql_connect("localhost","root","642531") ;
                        mysql_select_db("news",$db);
                        $query="update picture set picture='$name' where user_name='$user'";  
                        $result=mysql_query($query) or die("稍后再试1");
                        mysql_close($db);
                }
            }
}else{
        echo "Invalid file";
}
?>

论坛徽章:
21
白羊座
日期:2013-08-23 15:49:17金牛座
日期:2013-10-08 17:00:03处女座
日期:2013-10-12 11:54:11CU十二周年纪念徽章
日期:2013-10-24 15:41:34午马
日期:2013-11-27 14:07:21巨蟹座
日期:2013-12-04 10:56:03水瓶座
日期:2013-12-04 15:58:00亥猪
日期:2014-05-24 16:02:3115-16赛季CBA联赛之辽宁
日期:2016-11-07 13:52:53戌狗
日期:2013-08-23 16:15:31白羊座
日期:2013-08-24 21:59:24巨蟹座
日期:2013-08-25 16:34:24
10 [报告]
发表于 2012-11-26 15:15 |只看该作者
你这头像看的我晕.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP