Mime validation to download php file not working

I am trying to check the type of a mime file before uploading it to the database. However, I am not getting any results from my program. Can someone help me with this? Thanks in advance:)

Form handle code (handleUpload.php)

<?php if (isset($_POST['submit'])) { $Upload = new Upload(); if (function_exists("check_doc_mime")) { //validate MIME type $validateMime = $Upload->check_doc_mime($_FILES['filename']['tmp_name']); if (!$Upload->check_doc_mime($validateMime)) { /* Not a MIME type we want on our site, stop here * and return an error message, or just die(); */ echo "Mime not what we want."; } else { echo "This is okay"; } } } ?> 

Functions and database manipulation code (upload.php)

 <?php // If it going to need the database, then it // probably smart to require it before we start. require_once(LIB_PATH . DS . 'database.php'); class Upload extends DatabaseObject { protected static $table_name = "resume"; protected static $db_fields = array('resume_id', 'individual_id', 'resume_title', 'file_type', 'file_size', 'upload_date', 'status', 'resume_data'); public $resume_id; public $individual_id; public $resume_title; public $file_type; public $file_size; public $upload_date; public $status; public $resume_data; protected $destination; //so cannot be changed outside of class function check_doc_mime($tmp_name) { // MIME types: http://filext.com/faq/office_mime_types.php $finfo = finfo_open(FILEINFO_MIME_TYPE); $mtype = finfo_file($finfo, $tmp_name); if($mtype == ("application/vnd.openxmlformats-officedocument.wordprocessingml.document") || $mtype == ("application/vnd.ms-excel") || $mtype == ("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") || $mtype == ("application/vnd.ms-powerpoint") || $mtype == ("application/vnd.openxmlformats-officedocument.presentationml.presentation") || $mtype == ("application/pdf")) { return TRUE; } else { return FALSE; } finfo_close($finfo); } public function uploadResume($fileName, $tmpName, $fileSize, $fileType, $date){ global $database; $fp = fopen($tmpName, 'r'); $content = fread($fp, filesize($tmpName)); $content = addslashes($content); fclose($fp); if(!get_magic_quotes_gpc()) { $fileName = addslashes($fileName); } $sql = "INSERT INTO resume (resume_title, file_size, file_type, resume_data, status, individual_id) ". "VALUES ('$title', '$fileSize', '$fileType', '$content', '1', '$id')"; $database->query($sql); } } $Upload = new Upload(); $upload =& $Upload; ?> 
+5
source share
1 answer

It turns off because I did not write the if if statement correctly. It should have been if (!$validateMime) { not if (!$Upload->check_doc_mime($validateMime)) { .

+2
source

All Articles