Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP图像上传失败_Php - Fatal编程技术网

PHP图像上传失败

PHP图像上传失败,php,Php,我真的需要你的帮助。我试图上传一个php代码的图像。当我使用不同的.php文件并只上传代码时,它是有效的,但当我尝试将这些信息添加到我的主代码中,这些信息被发布到数据库中 我已经添加了这个,正如我所说,它只适用于上传的单独代码 form action="core/books-reg.php" method="POST" enctype="multipart/form-data" 这是我的主要.php代码,我想让它在其中工作。代码开始后!空(说明)。数据库采用名称并放入mysql,但我的文件夹中

我真的需要你的帮助。我试图上传一个php代码的图像。当我使用不同的.php文件并只上传代码时,它是有效的,但当我尝试将这些信息添加到我的主代码中,这些信息被发布到数据库中

我已经添加了这个,正如我所说,它只适用于上传的单独代码

form action="core/books-reg.php" method="POST" enctype="multipart/form-data"
这是我的主要.php代码,我想让它在其中工作。代码开始后!空(说明)。数据库采用名称并放入mysql,但我的文件夹中没有文件。任何帮助或其他方法都会非常好

<?php
session_start();

require("dbc.php");

$username = $_SESSION['username'];
$title = $_POST['title'];
$con = $_POST['con'];
$price = $_POST['price'];
$prodcode = $_POST['prodcode'];
$isbn = $_POST['isbn'];
$publisher = $_POST['publisher'];
$pages = $_POST['pages'];
$description = $_POST['description'];
$year = $_POST['year'];
$course = $_POST['course'];
$module = $_POST['module'];

if(!empty($title))
{
    if(!empty($price))
    {
        if(!empty($prodcode))
        {
            if(!empty($isbn))
            {
                if(!empty($publisher))
                {
                    if(!empty($pages))
                    {
                        if(!empty($description))
                        {
                            if (!isset($_FILES['image']['tmp_name'])) {
                            echo "";
                            }else{
                            $file=$_FILES['image']['tmp_name'];
                            $image= addslashes(file_get_contents($_FILES['image']['tmp_name']));
                            $image_name= addslashes($_FILES['image']['name']);

                            move_uploaded_file($_FILES["image"]["tmp_name"],"upload/" . $_FILES["image"]["name"]);

                            $location="upload/" . $_FILES["image"]["name"];             
                            }

                            mysql_query("INSERT INTO `books` (username,title,con,price,prodcode,isbn,publisher,pages,description,image,year,course,module) VALUES('$username','$title','$con','$price','$prodcode','$isbn','$publisher','$pages','$description','$image_name','$year','$course','$module')");
                            header("location: ../add_books.php?feedback=Your book has been put on the books page.");
                        }
                        else
                        {
                            header("location: ../add_books.php?feedback=Description field is empty");
                        }
                    }
                    else
                    {
                        header("location: ../add_books.php?feedback=Pages field is empty");
                    }
                }
                else
                {
                    header("location: ../add_books.php?feedback=Publisher field is empty");
                }
            }
            else
            {
                header("location: ../add_books.php?feedback=ISBN field is empty");
            }
        }
        else
        {
            header("location: ../add_books.php?feedback=Product code field is empty");
        }
    }
    else
    {
        header("location: ../add_books.php?feedback=Price field is empty");
    }
}
else
{
    header("location: ../add_books.php?feedback=Title field is empty");
}   
?>

如果要将上载代码放在同一页面上,则首先不需要在
表单
标记中指定
操作


并检查路径
upload/
是否位于正确的位置。

修复了移动上传的文件($\u文件[“图像”][“tmp\u名称”],“./上传/”$\u文件[“图像”][“名称])

路径
upload/
是否存在?你对那个文件夹有写权限吗?尝试
var_dump(is_dir('upload'))
yes,正如我所说,当上传代码位于单独的.php文件中时,它会工作。可能这个php文件的路径不同,因为您使用的是相对路径。一切正常。正如我所说,它将名称解析为数据库,但上载文件夹中没有文件…ponciste var_dump(is_dir('upload'));没有区别我希望代码完全在不同的页面中,因为我有详细信息,应该发送到mysql