Skip to content Skip to sidebar Skip to footer

Nvergh File Uploader Change Url Based on File Type

Server-side file upload tin can be easily implemented using PHP. There are various ways bachelor to upload paradigm to server and display images on the webpage. Generally, in a dynamic web application, the uploaded paradigm is stored in a directory of the server and the file name is inserted in the database. Later, the images are retrieved from the server based on the file proper noun stored in the database and display on the web page.

The paradigm can be uploaded directly to the database without storing on the server. Simply it will increase the database size and web page load fourth dimension. So, it'southward always a good idea to upload images to the server and shop file names in the database. In this tutorial, nosotros will show you the entire process to upload and store the paradigm file in MySQL database using PHP.

The example lawmaking demonstrates the procedure to implement the file upload functionality in the web application and the following functionality volition be implemented.

  • HTML form to upload image.
  • Upload paradigm to server using PHP.
  • Store file name in the database using PHP and MySQL.
  • Retrieve images from the database and display in the spider web page.

Create Datbase Table

To store the paradigm file name a tabular array need to be created in the database. The following SQL creates an images table with some basic fields in the MySQL database.

          CREATE          TABLE          `images` (          `id`          int(xi)          NOT Zilch          AUTO_INCREMENT,          `file_name`          varchar(255) COLLATE utf8_unicode_ci          NOT NULL,          `uploaded_on`          datetime          NOT NULL,          `status`          enum('one','0') COLLATE utf8_unicode_ci          NOT NULL          DEFAULT          '1',          PRIMARY KEY          (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;        

Database Configuration (dbConfig.php)

The dbConfig.php file is used to connect and select the MySQL database. Specify the database hostname ($dbHost), username ($dbUsername), countersign ($dbPassword), and name ($dbName) as per your MySQL credentials.

          <?php
// Database configuration
$dbHost = "localhost" ;
$dbUsername = "root" ;
$dbPassword = "root" ;
$dbName = "codexworld" ; // Create database connexion
$db = new mysqli ( $dbHost , $dbUsername , $dbPassword , $dbName ); // Check connection
if ( $db -> connect_error ) {
    dice(
"Connexion failed: " . $db -> connect_error );
}
?>

Upload Form HTML

Create an HTML course to allow the user to choose a file they desire to upload. Brand certain <form> tag contains the following attributes.

  • method="mail"
  • enctype="multipart/grade-data"

Also, make sure <input> tag contains type="file" attribute.

<form          action="upload.php"          method="post"          enctype="multipart/form-data">     Select Image File to Upload:     <input          type="file"          proper name="file">     <input          type="submit"          name="submit"          value="Upload"> </grade>        

php-upload-image-file-to-server-codexworld

The file upload form volition exist submitted to the upload.php file to upload image to the server.

Upload File to Server and Store in Database (upload.php)

The upload.php file handles the image upload functionality and shows the status message to the user.

  • Include the database configuration file to connect and select the MySQL database.
  • Get the file extension using pathinfo() part in PHP and validate the file format to cheque whether the user selects an image file.
  • Upload epitome to server using move_uploaded_file() role in PHP.
  • Insert prototype file proper name in the MySQL database using PHP.
  • Upload status volition exist shown to the user.
          <?php
// Include the database configuration file
include 'dbConfig.php' ;
$statusMsg = '' ; // File upload path
$targetDir = "uploads/" ;
$fileName = basename ( $_FILES [ "file" ][ "name" ]);
$targetFilePath = $targetDir . $fileName ;
$fileType = pathinfo ( $targetFilePath , PATHINFO_EXTENSION );

if(isset(

$_POST [ "submit" ]) && !empty( $_FILES [ "file" ][ "proper name" ])){
// Permit certain file formats
$allowTypes = array( 'jpg' , 'png' , 'jpeg' , 'gif' , 'pdf' );
    if(
in_array ( $fileType , $allowTypes )){
// Upload file to server
if( move_uploaded_file ( $_FILES [ "file" ][ "tmp_name" ], $targetFilePath )){
// Insert image file name into database
$insert = $db -> query ( "INSERT into images (file_name, uploaded_on) VALUES ('" . $fileName . "', NOW())" );
            if(
$insert ){
$statusMsg = "The file " . $fileName . " has been uploaded successfully." ;
            }else{
$statusMsg = "File upload failed, delight effort again." ;
            }
        }else{
$statusMsg = "Distressing, there was an error uploading your file." ;
        }
    }else{
$statusMsg = 'Pitiful, only JPG, JPEG, PNG, GIF, & PDF files are allowed to upload.' ;
    }
}else{
$statusMsg = 'Delight select a file to upload.' ;
}
// Brandish status message
echo $statusMsg ;
?>

Display Images from Database

Now we volition think the uploaded images from the server based on the file names in the database and display images in the spider web page.

  • Include the database configuration file.
  • Fetch images from MySQL database using PHP.
  • List images from the uploads directory of the server.
          <?php
// Include the database configuration file
include 'dbConfig.php' ; // Get images from the database
$query = $db -> query ( "SELECT * FROM images ORDER Past uploaded_on DESC" );

if(

$query -> num_rows > 0 ){
    while(
$row = $query -> fetch_assoc ()){
$imageURL = 'uploads/' . $row [ "file_name" ];
?> <img src="<?php echo $imageURL ; ?>" alt="" /> <?php }
}else{
?> <p>No image(south) found...</p> <?php } ?>

upload-image-retrieve-from-database-php-mysql-codexworld

Create Dynamic Image Gallery with jQuery, PHP & MySQL

Conclusion

Here we accept shown the most effective mode to implement image upload functionality on the website. Y'all can hands extend the file upload functionality as per your requirements. For providing the ameliorate user-interface you can integrate the Ajax File Upload functionality.

Upload multiple images using jQuery, Ajax and PHP

Are y'all want to get implementation help, or modify or raise the functionality of this script? Submit Paid Service Request

If yous take whatsoever questions nigh this script, submit it to our QA community - Inquire Question

harveyfoomescree.blogspot.com

Source: https://www.codexworld.com/upload-store-image-file-in-database-using-php-mysql/

Post a Comment for "Nvergh File Uploader Change Url Based on File Type"