<?php @ini_set('memory_limit', '128M'); @ini_set('upload_max_filesize', '40MB'); @ini_set('max_execution_time', '90'); include '../class/autoloader.php'; $autoloader = new autoloader(); // init autoloader $request = new requestHandler(); // init request $db = new database(); // init database $filter = new filter(); // init filter $data = new dataHandler(); // init dataHandler $post = $request->getPost(); $file = $request->getFile(); $page = $request->getPage(); $sort = $request->getSorting(); $msg = ''; // If upload if (isset($post['upload'])) { // Error check $errorMsg = array(); $ext = $filter->isImage($file['image']['name']); if ($ext === false) { $errorMsg['upload'] = '<p class="error">Please insert only png/jpg/jpeg/gif/bmp</p>'; } if (isset($file['image']['name']) && $filter->isSize($file['image']['tmp_name'])) { $errorMsg['upload'] = '<p class="error">Minimum 2MB and 200px x 200px</p>';
/** * Save image as px in database * @access public * @param string $image * @return array */ public function saveImage($src, $ext) { $db = new database(); $data = new dataHandler(); $size = getimagesize($src); $width = (int) $size[0]; $height = (int) $size[1]; if ($ext === 'png') { $image = imagecreatefrompng($src); } if ($ext === 'jpg' || $ext === 'jpeg') { $image = imagecreatefromjpeg($src); } if ($ext === 'gif') { $image = imagecreatefromgif($src); } if ($ext === 'bmp') { $image = imagecreatefromwbmp($src); } $values = ''; for ($y = 0; $y < $height; ++$y) { for ($x = 0; $x < $width; ++$x) { $res = imagecolorat($image, $x, $y); $rgb1 = $res >> 16 & 0xff; $rgb2 = $res >> 8 & 0xff; $rgb3 = $res & 0xff; $values .= '( AES_ENCRYPT("' . $rgb1 . '", "' . $db->aesKey . '"), AES_ENCRYPT("' . $rgb2 . '", "' . $db->aesKey . '"), AES_ENCRYPT("' . $rgb3 . '", "' . $db->aesKey . '"), ' . $x . ', ' . $y . ', ' . $data->getRank($rgb1, $rgb2, $rgb3) . ' ),'; if ($x % 100 == 0) { $values .= '|'; } } //end for $x } //end for $y $valueArray = explode('|', $values); $i_max = count($valueArray); for ($i = 0; $i < $i_max; ++$i) { $valueArray[$i] = substr($valueArray[$i], 0, strlen($valueArray[$i]) - 1); $sql = 'INSERT INTO pixel (pixelRGB1, pixelRGB2, pixelRGB3, pixelX, pixelY, pixelRank) VALUES ' . $valueArray[$i]; $db->insert($sql); } imagedestroy($image); }