Javascript 图像和数据上传到数据库,使用php

Javascript 图像和数据上传到数据库,使用php,javascript,php,Javascript,Php,获得了将新产品上传到数据库的代码 因为我是php新手,所以我从几个来源获得了它 一切似乎都很顺利,语法也不错,但上传图像和将数据插入数据库仍然没有成功 UPLOAD.php页面- <?php require "dbconn.php"; require "functions.php"; if(isset($_POST['Submit'])) { $product_name = strip_tags($_POST['name']); $product_price = s

获得了将新产品上传到数据库的代码 因为我是php新手,所以我从几个来源获得了它 一切似乎都很顺利,语法也不错,但上传图像和将数据插入数据库仍然没有成功

UPLOAD.php页面-

<?php
require "dbconn.php";
require "functions.php";

if(isset($_POST['Submit']))
{

     $product_name = strip_tags($_POST['name']);
     $product_price = strip_tags($_POST['price']);
     $category = strip_tags($_POST['category']);

}

$target_dir = "img/'.$category.'/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
    $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
    if($check !== false) {
        echo "File is an image - " . $check["mime"] . ".";
        $uploadOk = 1;
    } else {
        echo "File is not an image.";
        $uploadOk = 0;
    }
}
// Check if file already exists
if (file_exists($target_file)) {
    echo "Sorry, file already exists.";
    $uploadOk = 0;
}
// Check file size
if ($_FILES["fileToUpload"]["size"] > 500000) {
    echo "Sorry, your file is too large.";
    $uploadOk = 0;
}
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
    echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
    $uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
    echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
        insert_new_product($product_name, $product_price, $target_file, $category);
        header("Location: add_product.php?cname=$category");
    } else {
        echo "Sorry, there was an error uploading your file.";
    }
}

?>

我建议你改变一下

$target_dir = "img/'.$category.'/";


另外,在提交表单时尝试查看请求的去向。理想情况下,您需要一个基本标记来指定一个PHP控制器作为表单操作,而不需要完整路径。

您的提交按钮名为name=“submit”,但您正在检查submit if(isset($\u POST['submit'])。顺便说一句,你有任何错误吗?在你的代码中添加一些调试打印或回显以了解问题所在。正如我说的,我是PHP新手,你能告诉我它是如何完成的吗?在打开
复制错误标签后,立即将错误报告添加到文件顶部,但什么都没有(表单有一个页面,上传有一个页面。您需要更改action=“upload.php”具体是为了什么?类似于server_name:/upload.php。基本上检查upload.php是否可以从您尝试执行此操作的页面访问。它们都位于同一文件夹中。您的帖子表单不知道它们位于同一文件夹中。当您答复此问题时,请查看Chrome Developer Options(按F12)中的网络选项卡。此选项卡包含该页面发出的任何请求。清除它,发布表单,然后查看该请求的url。如果它解析为upload.php路径,包含服务器路径和所有内容,我们可以在其他位置查找该问题。如果url只是upload.php,则需要指定一个基本url。因此,我需要做的是-1)更改操作=“”从=“upload.php”到=“mywebsite/upload.php”2)在提交表单后按F12键。下一步是什么?我就是不明白
$target_dir = "img/'.$category.'/";
$target_dir = "img/".$category."/";