PHP tot MySQL图像上传不工作

PHP tot MySQL图像上传不工作,php,mysql,image,Php,Mysql,Image,我试图建立一个网站,在其中我可以上传一个文件到我的sql数据库,但它似乎不工作 这是我的密码 <html> <head> <title>Upload an image</title> </head> <body> <form action="upload.php" method="POST" enctype="multipart/form-data

我试图建立一个网站,在其中我可以上传一个文件到我的sql数据库,但它似乎不工作

这是我的密码

<html>
    <head>
        <title>Upload an image</title>
    </head>
    <body>
                <form action="upload.php" method="POST" enctype="multipart/form-data">
            File:
            <input type="file" name="Image">
            <input type="submit" value="Upload">
        </form>
        <?php
                    //Connecting to the database
                    mysql_connect("localhost","root","") or die(mysql_error());
                    mysql_select_db("picturedatabase") or die(mysql_error());

                    $file = $_FILES['Image']['tmp_name'];

                    if(!isset($file))
                    {
                        echo "Select an image";
                    }
                    else
                    {
                        $image = addslashes(file_get_contents($_FILES['Image']['tmp_name']));
                        $image_name = addslashes($FILES['Image']['name']);
                        $image_size = getimagesize($FILES['Image']['tmp_name']);
                    }

                    if($image_size==FALSE)
                    {
                        echo "That's not an image.";
                    }
                    else
                    {
                       if(!$insert = mysql_query("INSERT INTO images VALUES('','$image_name','$image')"))
                       {
                           echo "There was a problem uploading the image";
                       }
                       else
                       {
                          $lastid = mysql_insert_id();
                          echo "Image uploaded!<p />Your image:<p /> <img src=show.php?id=$lastid>";
                       } 
                    }
                ?>
    </body>
</html>

有人能告诉我我做错了什么并帮我解决这个问题吗?

在上传过程中,你应该将文件保存在某个文件夹中,并将文件名保存在数据库中,以便以后你可以从数据库中调用文件名并将其链接为下载的超链接,我正在使用下面的代码将图像上传到名为
files
的文件夹中,并将文件名保存在数据库中。最后,我将文件名放在变量
$newname

    if ($_FILES['file']['name']) {

        $allowedExts = array("gif", "jpeg", "jpg", "png");
        $temp = explode(".", $_FILES["file"]["name"]);
        $extension = end($temp);
        if ((($_FILES["file"]["type"] == "image/gif")
                || ($_FILES["file"]["type"] == "image/jpeg")
                || ($_FILES["file"]["type"] == "image/jpg")
                || ($_FILES["file"]["type"] == "image/pjpeg")
                || ($_FILES["file"]["type"] == "image/x-png")
                || ($_FILES["file"]["type"] == "image/png"))
            && ($_FILES["file"]["size"] < 500000)
            && in_array($extension, $allowedExts)
        ) {
            if ($_FILES["file"]["error"] > 0) {
                echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
            } else {
                $ext = end(explode(".", $_FILES["file"]["name"]));
                $filename = current(explode(".", $_FILES["file"]["name"]));
                $newname = $filename . '_' . time() . '.' . $ext;
                move_uploaded_file($_FILES["file"]["tmp_name"],
                    "files/" . $newname);
            }
        } else {
            echo "<div class='alert alert-success'>Image type or size is not valid.</div>";
        }
    }
if($\u文件['file']['name'])){
$allowedExts=数组(“gif”、“jpeg”、“jpg”、“png”);
$temp=explode(“.”,$_文件[“文件”][“名称”]);
$extension=end($temp);
如果(($_文件[“文件”][“类型”]=“图像/gif”)
||($_文件[“文件”][“类型”]=“图像/jpeg”)
||($_文件[“文件”][“类型”]=“图像/jpg”)
||($_文件[“文件”][“类型”]=“图像/pjpeg”)
||($_文件[“文件”][“类型”]=“图像/x-png”)
||($_文件[“文件”][“类型”]=“图像/png”))
&&($_文件[“文件”][“大小”]<500000)
&&in_数组($extension,$allowedExts)
) {
如果($\u文件[“文件”][“错误”]>0){
回显“返回代码:”.$\u文件[“文件”][“错误”]。
”; }否则{ $ext=end(分解(“.”,$_文件[“文件”][“名称]); $filename=current(分解(“.”,$_文件[“文件”][“名称]); $newname=$filename.'.''.time().$ext; 移动上传的文件($文件[“文件”][“tmp文件名”], “文件/”$newname); } }否则{ echo“图像类型或大小无效。”; } }
在上载过程中,您应该将文件保存在某个文件夹中,并将文件名保存在数据库中,以便以后您可以从数据库中调用文件名并将其链接为要下载的超链接。我使用以下代码将图像上载到名为
文件的文件夹中,并将文件名保存在数据库中。最后,我将文件名放在变量
$newname

    if ($_FILES['file']['name']) {

        $allowedExts = array("gif", "jpeg", "jpg", "png");
        $temp = explode(".", $_FILES["file"]["name"]);
        $extension = end($temp);
        if ((($_FILES["file"]["type"] == "image/gif")
                || ($_FILES["file"]["type"] == "image/jpeg")
                || ($_FILES["file"]["type"] == "image/jpg")
                || ($_FILES["file"]["type"] == "image/pjpeg")
                || ($_FILES["file"]["type"] == "image/x-png")
                || ($_FILES["file"]["type"] == "image/png"))
            && ($_FILES["file"]["size"] < 500000)
            && in_array($extension, $allowedExts)
        ) {
            if ($_FILES["file"]["error"] > 0) {
                echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
            } else {
                $ext = end(explode(".", $_FILES["file"]["name"]));
                $filename = current(explode(".", $_FILES["file"]["name"]));
                $newname = $filename . '_' . time() . '.' . $ext;
                move_uploaded_file($_FILES["file"]["tmp_name"],
                    "files/" . $newname);
            }
        } else {
            echo "<div class='alert alert-success'>Image type or size is not valid.</div>";
        }
    }
if($\u文件['file']['name'])){
$allowedExts=数组(“gif”、“jpeg”、“jpg”、“png”);
$temp=explode(“.”,$_文件[“文件”][“名称”]);
$extension=end($temp);
如果(($_文件[“文件”][“类型”]=“图像/gif”)
||($_文件[“文件”][“类型”]=“图像/jpeg”)
||($_文件[“文件”][“类型”]=“图像/jpg”)
||($_文件[“文件”][“类型”]=“图像/pjpeg”)
||($_文件[“文件”][“类型”]=“图像/x-png”)
||($_文件[“文件”][“类型”]=“图像/png”))
&&($_文件[“文件”][“大小”]<500000)
&&in_数组($extension,$allowedExts)
) {
如果($\u文件[“文件”][“错误”]>0){
回显“返回代码:”.$\u文件[“文件”][“错误”]。
”; }否则{ $ext=end(分解(“.”,$_文件[“文件”][“名称]); $filename=current(分解(“.”,$_文件[“文件”][“名称]); $newname=$filename.'.''.time().$ext; 移动上传的文件($文件[“文件”][“tmp文件名”], “文件/”$newname); } }否则{ echo“图像类型或大小无效。”; } }
在上载过程中,您应该将文件保存在某个文件夹中,并将文件名保存在数据库中,以便以后您可以从数据库中调用文件名并将其链接为要下载的超链接。我使用以下代码将图像上载到名为
文件的文件夹中,并将文件名保存在数据库中。最后,我将文件名放在变量
$newname

    if ($_FILES['file']['name']) {

        $allowedExts = array("gif", "jpeg", "jpg", "png");
        $temp = explode(".", $_FILES["file"]["name"]);
        $extension = end($temp);
        if ((($_FILES["file"]["type"] == "image/gif")
                || ($_FILES["file"]["type"] == "image/jpeg")
                || ($_FILES["file"]["type"] == "image/jpg")
                || ($_FILES["file"]["type"] == "image/pjpeg")
                || ($_FILES["file"]["type"] == "image/x-png")
                || ($_FILES["file"]["type"] == "image/png"))
            && ($_FILES["file"]["size"] < 500000)
            && in_array($extension, $allowedExts)
        ) {
            if ($_FILES["file"]["error"] > 0) {
                echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
            } else {
                $ext = end(explode(".", $_FILES["file"]["name"]));
                $filename = current(explode(".", $_FILES["file"]["name"]));
                $newname = $filename . '_' . time() . '.' . $ext;
                move_uploaded_file($_FILES["file"]["tmp_name"],
                    "files/" . $newname);
            }
        } else {
            echo "<div class='alert alert-success'>Image type or size is not valid.</div>";
        }
    }
if($\u文件['file']['name'])){
$allowedExts=数组(“gif”、“jpeg”、“jpg”、“png”);
$temp=explode(“.”,$_文件[“文件”][“名称”]);
$extension=end($temp);
如果(($_文件[“文件”][“类型”]=“图像/gif”)
||($_文件[“文件”][“类型”]=“图像/jpeg”)
||($_文件[“文件”][“类型”]=“图像/jpg”)
||($_文件[“文件”][“类型”]=“图像/pjpeg”)
||($_文件[“文件”][“类型”]=“图像/x-png”)
||($_文件[“文件”][“类型”]=“图像/png”))
&&($_文件[“文件”][“大小”]<500000)
&&in_数组($extension,$allowedExts)
) {
如果($\u文件[“文件”][“错误”]>0){
回显“返回代码:”.$\u文件[“文件”][“错误”]。
”; }否则{ $ext=end(分解(“.”,$_文件[“文件”][“名称]); $filename=current(分解(“.”,$_文件[“文件”][“名称]); $newname=$filename.'.''.time().$ext; 移动上传的文件($文件[“文件”][“tmp文件名”], “文件/”$newname); } }否则{ echo“图像类型或大小无效。”; } }
在上载过程中,您应该将文件保存在某个文件夹中,并将文件名保存在数据库中,以便以后您可以从数据库中调用文件名并将其链接为要下载的超链接。我使用以下代码将图像上载到名为
文件的文件夹中,并将文件名保存在数据库中。最后,我将文件名放在变量
$newname

    if ($_FILES['file']['name']) {

        $allowedExts = array("gif", "jpeg", "jpg", "png");
        $temp = explode(".", $_FILES["file"]["name"]);
        $extension = end($temp);
        if ((($_FILES["file"]["type"] == "image/gif")
                || ($_FILES["file"]["type"] == "image/jpeg")
                || ($_FILES["file"]["type"] == "image/jpg")
                || ($_FILES["file"]["type"] == "image/pjpeg")
                || ($_FILES["file"]["type"] == "image/x-png")
                || ($_FILES["file"]["type"] == "image/png"))
            && ($_FILES["file"]["size"] < 500000)
            && in_array($extension, $allowedExts)
        ) {
            if ($_FILES["file"]["error"] > 0) {
                echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
            } else {
                $ext = end(explode(".", $_FILES["file"]["name"]));
                $filename = current(explode(".", $_FILES["file"]["name"]));
                $newname = $filename . '_' . time() . '.' . $ext;
                move_uploaded_file($_FILES["file"]["tmp_name"],
                    "files/" . $newname);
            }
        } else {
            echo "<div class='alert alert-success'>Image type or size is not valid.</div>";
        }
    }
if($\u文件['file']['name'])){
$allowedExts=数组(“gif”、“jpeg”、“jpg”、“png”);
$temp=explode(“.”,$_文件[“文件”][“名称”]);
$extension=end($temp);
如果(($_文件[“文件”][“类型”]=“图像/gif”)
||($_文件[“文件”][“类型”]=“图像/jpeg”)
||($_文件[“文件”][“类型”]=“图像/jpg”)
||($_文件[“文件”][“类型”]=“图像/pjpeg”)
||($_FILES[“file”][“type”]=“image/x-png