如何将图片的目录/ url放入数据库?

时间:2014-05-10 20:27:04

标签: php image

我知道这个问题之前已被问过很多次了,但即使我做了很多次,我仍然无法理解。我需要有人向我解释一些事情,但我在这里没有任何帮助。我希望你们能帮助我编写代码。

我尝试做一个上传页面,它工作正常,但我只是不明白人们如何抓取图像位置目录/ url并将其保存到数据库中。我可以显示图像,但图像正在从文件夹中显示。我的意思是我认为图像上传到uploads/文件夹后的目录没有保存到数据库中。

我有一个数据库名称images和表images。列数为idnameext

以下是我对index.php的编码:

<html>
<head>
</head>

<body>

<!--Upload form-->
<form action="" method="POST" enctype="multipart/form-data">

<input type="file" name="file"/><br/>
<input type="submit" name="submit" value="Upload">

</form>

<?php
//include the connect.php file

include ('connect.php');

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


    //location, where the image will be saved
    $loc= "uploads/";

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

            $file=explode(".", $_FILES["file"]["name"]);


            mysql_query("INSERT INTO images VALUES ('','".$file[0]."', '".$file[1]."')");
            $id = mysql_insert_id();

            $newname = "$id.$file[1]";

            $path = "$loc$newname.ShowUploadKatSini.php";

            move_uploaded_file($_FILES["file"]["tmp_name"], $path);
            echo"Your image has been uploaded successfully. Visit this link to see ur image <a href='$path'>Click HERE</a>.";


        } 
        else 
        {
            echo"Invalid file!";

        }



     }

?>

</body>
</html>

这是connect.php:     

$connect = mysql_connect("localhost","root");

//select database
mysql_select_db("images",$connect);

?>

我真正的问题是如何将图片的目录/网址抓取到数据库中并将我上传的图片显示在某个页面中,让我们说出页面名称dress.html

1 个答案:

答案 0 :(得分:0)

你INSERT查询不正确

mysql_query("INSERT INTO images VALUES ('','".$file[0]."', '".$file[1]."')");

应该是

mysql_query("INSERT INTO images (`name`, `ext`) VALUES ('".$file[0]."', '".$file[1]."')");