张美英 发表于 2012-11-24 17:56

php 上传图片代码一直提示警告,求高手指教,急!!!

运行一下代码,浏览器提示
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";
}
?>

a.a 发表于 2012-11-24 22:17

Unable to move '/tmp/phpk0nLl5' to '.upload/en.jpg'move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]);将upload的路径换成绝对路径,试试呢?

张美英 发表于 2012-11-25 13:56

谢谢!上传可以了!但是下面又遇到一个问题,就是我想把图片都重命名一下(方便使用),请问要在上面的代码中加写什么呢???

孤独园主人 发表于 2012-11-25 16:03

回复 3# 张美英
move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
把上面语句中的 $_FILES["file"]["name"] 换成你想要的名字就可以了。
   

张美英 发表于 2012-11-25 17:26

改了之后还能找到上传的图片吗?

a.a 发表于 2012-11-25 21:01

设置一个变量存起来不就行了。或是你可以在表里面用两个字段来存其名称,一个字段存原来的名字,一个字段存你改过后的名字。

张美英 发表于 2012-11-26 09:12

谢谢你!今天试了一下,已经好了!:em03:

a.a 发表于 2012-11-26 09:19

分享一下你是怎么解决的?用的什么方法?

张美英 发表于 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=$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";
}
?>

zongg 发表于 2012-11-26 15:15

你这头像看的我晕.
页: [1] 2
查看完整版本: php 上传图片代码一直提示警告,求高手指教,急!!!