php - Exceeding Maximum File Size Is Not Showing An Error -


i have written code should check whether file size exceeds 8.5 mb or not & if does, should produce , error , prohibit post entering db. code prohibiting post enter db not showing error stating file size exceeds. ( p.s: check unknown file format working.) here code have written:

   //$session id define ("max_size","9000");  function getextension($str) {          $i = strrpos($str,".");          if (!$i) { return ""; }          $l = strlen($str) - $i;          $ext = substr($str,$i+1,$l);          return $ext; }   $valid_formats = array("jpg", "png", "gif", "bmp","jpeg"); if(isset($_post) , $_server['request_method'] == "post")  {      $uploaddir = "uploads/"; //a directory inside     foreach ($_files['photos']['name'] $name => $value)     {          $filename = stripslashes($_files['photos']['name'][$name]);         $size=filesize($_files['photos']['tmp_name'][$name]);         //get extension of file in lower case format         $ext = getextension($filename);         $ext = strtolower($ext);          if(in_array($ext,$valid_formats))          {            if ($size < (max_size*1024))            {              $image_name=time().$filename;              echo "<img src='".$uploaddir.$image_name."' class='imglist'>";              $newname=$uploaddir.$image_name;               if (move_uploaded_file($_files['photos']['tmp_name'][$name], $newname))               {                $time=time();                mysql_query("insert user_uploads(image_name,user_id_fk,created) values('$image_name','$session_id','$time')");                }            else            {              echo '<p style="color: red;">you have exceeded size limit! moving unsuccessful! </p>';             }             }            else            {              echo '<p style="color: red;">you have exceeded size limit!</p>';             }            }           else          {              echo '<p style="color: red;">unknown extension!</p>';           }       } } 

i changed code bit.

you don't need function getextension complicated.

i changed foreach, loop through files not through attributes of file.

finally need check if directory exists before moving file. if not, should create it.

if(!is_dir($uploaddir)) {     mkdir($uploaddir); } 

see if works , check differences:

<?php   //$session id define ("max_size","9000");  function getextension($str) {          $ext = explode("/",$str);          return $ext[1]; }   $valid_formats = array("jpg", "png", "gif", "bmp","jpeg"); if(isset($_post) , $_server['request_method'] == "post")  {      $uploaddir = "uploads/"; //a directory inside     foreach ($_files $file)     {          $filename = stripslashes($file['name']);         $size=$file['size'];         //get extension of file in lower case format         $ext = getextension($file['type']);         $ext = strtolower($ext);          if(in_array($ext,$valid_formats)){            if ($size < (max_size*1024)){              $image_name=time().$filename;              echo "<img src='".$uploaddir.$image_name."' class='imglist'>";              $newname=$uploaddir.$image_name;               //before upload file directory, check if exists              if(!is_dir($uploaddir)) {                mkdir($uploaddir);              }               if (move_uploaded_file($file['name'], $newname)){                $time=time();                mysql_query("insert user_uploads(image_name,user_id_fk,created) values('$image_name','$session_id','$time')");              }else{              echo '<p style="color: red;">you have exceeded size limit! moving unsuccessful! </p>';              }            }else{              echo '<p style="color: red;">you have exceeded size limit!</p>';            }           }else{              echo '<p style="color: red;">unknown extension!</p>';           }       } } 

it worked in computer assume working to. hope helped


Comments

Popular posts from this blog

c++ - Difference between pre and post decrement in recursive function argument -

php - Nothing but 'run(); ' when browsing to my local project, how do I fix this? -

php - How can I echo out this array? -