How to store images in mysql database using php

前端 未结 4 1906
猫巷女王i
猫巷女王i 2020-12-02 19:41

How can i store and display the images in a MySQL database. Till now i have only written the code to get the images from the user and store them in a folder, the code that i

相关标签:
4条回答
  • 2020-12-02 20:01
    if(isset($_POST['form1']))
    {
        try
        {
    
    
            $user=$_POST['username'];
    
            $pass=$_POST['password'];
            $email=$_POST['email'];
            $roll=$_POST['roll'];
            $class=$_POST['class'];
    
    
    
            if(empty($user)) throw new Exception("Name can not empty");
            if(empty($pass)) throw new Exception("Password can not empty");
            if(empty($email)) throw new Exception("Email can not empty");
            if(empty($roll)) throw new Exception("Roll can not empty");
            if(empty($class)) throw new Exception("Class can not empty");
    
    
            $statement=$db->prepare("show table status like 'tbl_std_info'");
            $statement->execute();
            $result=$statement->fetchAll();
            foreach($result as $row)
            $new_id=$row[10];
    
    
            $up_file=$_FILES["image"]["name"];
    
            $file_basename=substr($up_file, 0 , strripos($up_file, "."));
            $file_ext=substr($up_file, strripos($up_file, ".")); 
            $f1="$new_id".$file_ext;
    
            if(($file_ext!=".png")&&($file_ext!=".jpg")&&($file_ext!=".jpeg")&&($file_ext!=".gif"))
            {
                throw new Exception("Only jpg, png, jpeg or gif Logo are allow to upload / Empty Logo Field");
            }
            move_uploaded_file($_FILES["image"]["tmp_name"],"../std_photo/".$f1);
    
    
            $statement=$db->prepare("insert into tbl_std_info (username,image,password,email,roll,class) value (?,?,?,?,?,?)");
    
            $statement->execute(array($user,$f1,$pass,$email,$roll,$class));
    
    
            $success="Registration Successfully Completed";
    
            echo $success;
        }
        catch(Exception $e)
        {
            $msg=$e->getMessage();
        }
    }
    
    0 讨论(0)
  • 2020-12-02 20:05

    insert image zh

    -while we insert image in database using insert query

    $Image = $_FILES['Image']['name'];
        if(!$Image)
        {
          $Image="";
        }
        else
        {
          $file_path = 'upload/';
          $file_path = $file_path . basename( $_FILES['Image']['name']);    
          if(move_uploaded_file($_FILES['Image']['tmp_name'], $file_path)) 
         { 
    }
    }
    
    0 讨论(0)
  • 2020-12-02 20:16
    <!-- 
    //THIS PROGRAM WILL UPLOAD IMAGE AND WILL RETRIVE FROM DATABASE. UNSING BLOB
    (IF YOU HAVE ANY QUERY CONTACT:rahulpatel541@gmail.com)
    
    
    CREATE TABLE  `images` (
      `id` int(100) NOT NULL AUTO_INCREMENT,
      `name` varchar(100) NOT NULL,
      `image` longblob NOT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB ;
    
    -->
    <!-- this form is user to store images-->
    <form action="index.php" method="post"  enctype="multipart/form-data">
    Enter the Image Name:<input type="text" name="image_name" id="" /><br />
    
    <input name="image" id="image" accept="image/JPEG" type="file"><br /><br />
    <input type="submit" value="submit" name="submit" />
    </form>
    <br /><br />
    <!-- this form is user to display all the images-->
    <form action="index.php" method="post"  enctype="multipart/form-data">
    Retrive all the images:
    <input type="submit" value="submit" name="retrive" />
    </form>
    
    
    
    <?php
    //THIS IS INDEX.PHP PAGE
    //connect to database.db name is images
            mysql_connect("", "", "") OR DIE (mysql_error());
            mysql_select_db ("") OR DIE ("Unable to select db".mysql_error());
    //to retrive send the page to another page
    if(isset($_POST['retrive']))
    {
        header("location:search.php");
    
    }
    
    //to upload
    if(isset($_POST['submit']))
    {
    if(isset($_FILES['image'])) {
            $name=$_POST['image_name'];
            $email=$_POST['mail'];
            $fp=addslashes(file_get_contents($_FILES['image']['tmp_name'])); //will store the image to fp
            }
                    // our sql query
                    $sql = "INSERT INTO images VALUES('null', '{$name}','{$fp}');";
                                mysql_query($sql) or die("Error in Query insert: " . mysql_error());
    } 
    ?>
    
    
    
    <?php
    //SEARCH.PHP PAGE
        //connect to database.db name = images
             mysql_connect("localhost", "root", "") OR DIE (mysql_error());
            mysql_select_db ("image") OR DIE ("Unable to select db".mysql_error());
    //display all the image present in the database
    
            $msg="";
            $sql="select * from images";
            if(mysql_query($sql))
            {
                $res=mysql_query($sql);
                while($row=mysql_fetch_array($res))
                {
                        $id=$row['id'];
                        $name=$row['name'];
                        $image=$row['image'];
    
                      $msg.= '<a href="search.php?id='.$id.'"><img src="data:image/jpeg;base64,'.base64_encode($row['image']). ' " />   </a>';
    
                }
            }
            else
                $msg.="Query failed";
    ?>
    <div>
    <?php
    echo $msg;
    ?>
    
    0 讨论(0)
  • 2020-12-02 20:18

    I found the answer, For those who are looking for the same thing here is how I did it. You should not consider uploading images to the database instead you can store the name of the uploaded file in your database and then retrieve the file name and use it where ever you want to display the image.

    HTML CODE

    <input type="file" name="imageUpload" id="imageUpload">
    

    PHP CODE

    if(isset($_POST['submit'])) {
    
        //Process the image that is uploaded by the user
    
        $target_dir = "uploads/";
        $target_file = $target_dir . basename($_FILES["imageUpload"]["name"]);
        $uploadOk = 1;
        $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
    
        if (move_uploaded_file($_FILES["imageUpload"]["tmp_name"], $target_file)) {
            echo "The file ". basename( $_FILES["imageUpload"]["name"]). " has been uploaded.";
        } else {
            echo "Sorry, there was an error uploading your file.";
        }
    
        $image=basename( $_FILES["imageUpload"]["name"],".jpg"); // used to store the filename in a variable
    
        //storind the data in your database
        $query= "INSERT INTO items VALUES ('$id','$title','$description','$price','$value','$contact','$image')";
        mysql_query($query);
    
        require('heading.php');
        echo "Your add has been submited, you will be redirected to your account page in 3 seconds....";
        header( "Refresh:3; url=account.php", true, 303);
    }
    

    CODE TO DISPLAY THE IMAGE

    while($row = mysql_fetch_row($result)) {
        echo "<tr>";
        echo "<td><img src='uploads/$row[6].jpg' height='150px' width='300px'></td>";
        echo "</tr>\n";
    }
    
    0 讨论(0)
提交回复
热议问题