1 Star2 Stars3 Stars4 Stars5 Stars (16 votes, average: 5.00 out of 5)

Store Image Uploads On Server With Summernote Not Base 64

Create editor-upload.php File *

Now Create editor-upload.php file. This is what will process the image file for you. Here is what it looks like.

<?php 
if(empty($_FILES['file']))
{
	exit();	
}
$errorImgFile = "./img/img_upload_error.jpg";
$temp = explode(".", $_FILES["file"]["name"]);
$newfilename = round(microtime(true)) . '.' . end($temp);
$destinationFilePath = './img-uploads/'.$newfilename ;
if(!move_uploaded_file($_FILES['file']['tmp_name'], $destinationFilePath)){
	echo $errorImgFile;
}
else{
	echo $destinationFilePath;
}

?>

Create img-uploads Directory *

Now create a folder and call it img-uploads. This is the folder we will be storing the images in. Make sure it has permissions to store files.

Tip: Click on images to make them larger. If you find anything wrong on this page or need further assistance please comment below or contact me. 🙂

Just in case my WordPress corrupts my code here you can download the files here.

Summernote Image Upload On The Fly

Subscribe To My YouTube Channel:

The video is on the next page.

Store Image Uploads On Server With Summernote Not Base 64 was last modified: March 10th, 2019 by Maximus Mccullough

Please like, share and subscribe.

Advanced Programming Made Easy

I hope you enjoyed the article. If I was able to help you please consider a tip for the content.

One Time Tip

more tips

Reoccuring Tips

Tips

Cool People Share:
Store Image Uploads On Server With Summernote Not Base 64

Pages:Previous 1 2 3 4 Next

15 Comments

  • Davo says:

    I’ve used your code with some success thanks for that BUT (yes there’s always a but).

    If i try to upload multiple image files say 10 images, 10 images will be displayed in the summernote edit box but some will be duplicates, you might have 8 of the same and 2 of another and only those 2 files will have actually been uploaded to the server.

    If I debug the code in Chrome and put a break in the for loop where the file list array is loaded one at a time using ajax, I can see each image being loaded and they all go up just fine. When not in the debugger I get the aforementioned problem. It’s like the ajax call is not getting time to complete or something, any ideas?

    • Yeah thats an interesting problem. I think that may be an issue with the PHP uploader page. I don’t have time to look right now but in the upload php there may be an issue. Here are a couple multi uploaders to try.

      Without Validation

      foreach($_FILES["files"]["tmp_name"] as $key=>$tmp_name){
          $temp = $_FILES["files"]["tmp_name"][$key];
          $name = $_FILES["files"]["name"][$key];
           
          if(empty($temp))
          {
              break;
          }
           
          move_uploaded_file($temp,"UploadFolder/".$name);
      }

      With Validation

      $errors = array();
      $uploadedFiles = array();
      $extension = array("jpeg","jpg","png","gif");
      $bytes = 1024;
      $KB = 1024;
      $totalBytes = $bytes * $KB;
      $UploadFolder = "UploadFolder";
       
      $counter = 0;
       
      foreach($_FILES["files"]["tmp_name"] as $key=>$tmp_name){
          $temp = $_FILES["files"]["tmp_name"][$key];
          $name = $_FILES["files"]["name"][$key];
           
          if(empty($temp))
          {
              break;
          }
           
          $counter++;
          $UploadOk = true;
           
          if($_FILES["files"]["size"][$key] > $totalBytes)
          {
              $UploadOk = false;
              array_push($errors, $name." file size is larger than the 1 MB.");
          }
           
          $ext = pathinfo($name, PATHINFO_EXTENSION);
          if(in_array($ext, $extension) == false){
              $UploadOk = false;
              array_push($errors, $name." is invalid file type.");
          }
           
          if(file_exists($UploadFolder."/".$name) == true){
              $UploadOk = false;
              array_push($errors, $name." file is already exist.");
          }
           
          if($UploadOk == true){
              move_uploaded_file($temp,$UploadFolder."/".$name);
              array_push($uploadedFiles, $name);
          }
      }
       
      if($counter>0){
          if(count($errors)>0)
          {
              echo "<b>Errors:</b>";
              echo "<br/><ul>";
              foreach($errors as $error)
              {
                  echo "<li>".$error."</li>";
              }
              echo "</ul><br/>";
          }
           
          if(count($uploadedFiles)>0){
              echo "<b>Uploaded Files:</b>";
              echo "<br/><ul>";
              foreach($uploadedFiles as $fileName)
              {
                  echo "<li>".$fileName."</li>";
              }
              echo "</ul><br/>";
               
              echo count($uploadedFiles)." file(s) are successfully uploaded.";
          }                               
      }
      else{
          echo "Please, Select file(s) to upload.";
      }
  • Eko Budiyanto says:

    Work great, thank you for great tutorial, anyway is it possible to delete image when user remove the image from the editor? thanks.

  • Aman Khan says:

    Dear Sir,
    Please give me complete coding for this
    Setting Up To Store Image Uploads On Server With Summernote Not Base 64.

    I have tried many time, but can not the correct solution.
    Please help me.

  • asli says:

    thank you :))

  • ekafkim says:

    Thank you for great tutorial!
    But I can’t see any attached images in the summernote edit box.
    Your sample index.php also can’t see any images.
    Can you help me?

  • Please help me ,I didn’t get full code page after I have paid the tutorials.Below pasted website text is tutorials.

  • Jairo says:

    I get this:

    [Deprecation] Resource requests whose URLs contained both removed whitespace (`\n`, `\r`, `\t`) characters and less-than characters (`<`) are blocked. Please remove newlines and encode less-than characters from places like element attribute values in order to load these resources. See https://www.chromestatus.com/feature/5735596811091968 for more details

  • gurpreet vinayek says:

    hello when i tried to select image from text area it shows me empty means am unable to insert image into text area but am able to insert text.
    and i have one more question that you have not used form method post and enctype in form so without these can we insert data in database. Am new in this field please let me know how to insert textarea data in database. thank you in advance.

    • As far as the text area is concerned usually you cannot insert an image and make it work. This text area is special though because it uses summernote. Summernote uses jQuery to susubmitmbit to a php processor page. The PHP processor page actually does the work of submitting the image path to the database. It is also responsible for uploading the image to a folder on the server. Let me know if this helps explain it to you.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.