P
ph3arme

  • Aug 18, 2013
  • Joined Aug 18, 2013
  • i have updated my imageresize.php to this to correct errors that i had in php

    <?php
    $filename= $_FILES['userfile']['tmp_name'];
    $width = 50;
    $height = 50;
    #header('Content-type: image/jpeg');
    list($width_orig, $height_orig) = getimagesize($filename);
    $ratio_orig = $width_orig/$height_orig;
    if ($width/$height > $ratio_orig) {
    $width = $height*$ratio_orig;
    } else {
    $height = $width/$ratio_orig;
    }
    $image_p = imagecreatetruecolor($width, $height);
    $image = imagecreatefromjpeg($filename);
    imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
    $imgData= $image;
    ?>

    if i block the header, it gives no error but doesn't upload the image data into the database, if i unblock the header line, then i get the same error

    • Hi everyone, i am receiving a weird error that i do not know how to correct, this is 3 pages but when i try to to resize an image before putting in database, it gives the error the image cannot be displayed because it contains errors. Any help would be apreciated.

      submit.php
      <html>
      <head><title>File Insert</title></head>
      <body>
      <h3>Please Choose a File and click Submit</h3>
      <form enctype="multipart/form-data" action=
      "upload.php" method="post">
      <input type="hidden" name="MAX_FILE_SIZE" value="10000000" />
      <input type="hidden" name="continue" value="1" />
      <input name="userfile" type="file" />
      <input type="submit" value="Submit" />
      </form>
      </body>
      </html>


      upload.php

      <?php
      // check if a file was submitted
      if(!isset($_FILES['userfile']))
      {
      echo '<p>Please select a file</p>';
      }
      else
      {
      try {
      $msg= upload(); //this will upload your image
      echo $msg; //Message showing success or failure.
      }
      catch(Exception $e) {
      echo $e->getMessage();
      echo 'Sorry, could not upload file';
      }
      }

      // the upload function

      function upload() {
      include "file_constants.php";
      $maxsize = 10000000; //set to approx 10 MB

      //check associated error code
      if($_FILES['userfile']['error']==UPLOAD_ERR_OK) {
      
          //check whether file is uploaded with HTTP POST
          if(is_uploaded_file($_FILES['userfile']['tmp_name'])) {    
      
              //checks size of uploaded image on server side
              if( $_FILES['userfile']['size'] < $maxsize) {  
      
      
                      // prepare the image for insertion
                      $imgData =addslashes (file_get_contents($_FILES['userfile']['tmp_name']));

      include 'imageresize.php';
      // put the image in the db...
      // database connection
      mysql_connect($host, $user, $pass) OR DIE (mysql_error());

                      // select the db
                      mysql_select_db ($db) OR DIE ("Unable to select db".mysql_error());
      
                      // our sql query
                      $sql = "INSERT INTO a
                      (picture)
                      VALUES
                      ('{$imgData}');";
      
                      // insert the image
                      mysql_query($sql) or die("Error in Query: " . mysql_error());
                      $msg='<p>Image successfully saved in database with id ='. mysql_insert_id().' </p>';
      
        }       else {
                  // if the file is not less than the maximum allowed, print an error
                  $msg='<div>File exceeds the Maximum File limit</div>
                  <div>Maximum File limit is '.$maxsize.' bytes</div>
                  <div>File '.$_FILES['userfile']['name'].' is '.$_FILES['userfile']['size'].
                  ' bytes</div><hr />';
                  }
          }
          else
              $msg="File not uploaded successfully.";
      
      }
      else {
          $msg= file_upload_error_message($_FILES['userfile']['error']);
      }
      return $msg;

      }

      // Function to return error message based on error code

      function file_upload_error_message($error_code) {
      switch ($error_code) {
      case UPLOAD_ERR_INI_SIZE:
      return 'The uploaded file exceeds the upload_max_filesize directive in php.ini';
      case UPLOAD_ERR_FORM_SIZE:
      return 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form';
      case UPLOAD_ERR_PARTIAL:
      return 'The uploaded file was only partially uploaded';
      case UPLOAD_ERR_NO_FILE:
      return 'No file was uploaded';
      case UPLOAD_ERR_NO_TMP_DIR:
      return 'Missing a temporary folder';
      case UPLOAD_ERR_CANT_WRITE:
      return 'Failed to write file to disk';
      case UPLOAD_ERR_EXTENSION:
      return 'File upload stopped by extension';
      default:
      return 'Unknown upload error';
      }
      }
      ?>


      imageresize.php

      <?php
      $filename= $imgData;
      $width = 50;
      $height = 50;
      header('Content-type: image/jpeg');
      list($width_orig, $height_orig) = getimagesize($filename);
      $ratio_orig = $width_orig/$height_orig;
      if ($width/$height > $ratio_orig) {
      $width = $height*$ratio_orig;
      } else {
      $height = $width/$ratio_orig;
      }
      $image_p = imagecreatetruecolor($width, $height);
      $image = imagecreatefromjpeg($filename);
      imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
      $imgData= $filename;
      ?>