php


Codeigniter Image Upload and Watermark for multiple Images


I'm using codeigniter upload and image_lib library to upload and give watermark for multiple images that I'm uploading. Below are the code snippet:
function do_upload_img()
{
if(isset($_FILES['portfolioimg']['size']) != 0){
$name_array = array();
$files = $_FILES;
$cpt = count($_FILES['portfolioimg']['name']);
// $config['source_image'] = ''; //get original image
$config['wm_type'] = 'overlay';
$config['wm_overlay_path'] = './assets/img/watermark.png';
$config['quality'] = 50;
$config['wm_vrt_alignment'] = 'middle';
$config['wm_hor_alignment'] = 'center';
$this->load->library('image_lib', $config);
for($i=0; $i<=$cpt-1; $i++)
{
$_FILES['userfile']['name']= $files['portfolioimg']['name'][$i];
$_FILES['userfile']['type']= $files['portfolioimg']['type'][$i];
$_FILES['userfile']['tmp_name']= $files['portfolioimg']['tmp_name'][$i];
$_FILES['userfile']['error']= $files['portfolioimg']['error'][$i];
$_FILES['userfile']['size']= $files['portfolioimg']['size'][$i];
$imgnam = rand(10,1000000).time();
$ext = pathinfo($files['portfolioimg']['name'][$i], PATHINFO_EXTENSION);
if($this->upload->initialize($this->set_upload_options($imgnam,$ext)))
{
if($this->upload->do_upload())
{
$config['source_image'] = './assets/temp/' . 'Rookie_'.$imgnam.'.'.$ext;
$this->image_lib->initialize($config);
$this->image_lib->watermark();
$name_array[] = $this->upload->data('file_name');
}
}else{
$this->session->set_flashdata('falsemsg','Only jpg, jpeg, png files are allowed to be uploaded.');
}
}
return $name_array;
}else{
return false;
}
}
//Image Upload Initialize
private function set_upload_options($imgnam,$ext)
{
//upload an image options
$config = array();
$config['upload_path'] = './assets/temp/';
$config['allowed_types'] = 'jpeg|jpg|png|JPEG|JPG|PNG';
$config['max_size'] = '0';
$config['overwrite'] = true;
$config['file_name'] = 'Rookie_'.$imgnam.'.'.$ext;
return $config;
}
By using this code I'm changing the actual filename to some random names for each and every image that is uploading.
But now the problem is, sometimes in the $name_array the filenames are coming as the original filename instead of the name that I'm assigning($imgnam = rand(10,1000000).time();).

Related Links

Return nested keys in mongodb
Programatically Export Excel file from an MS Access table Using PHP
How to send Cookie using PHP Goutte
How can I hide affiliate URL before redirecting to actual store URL using PHP?
Crack Own Password Database Feasibility
require won't load variables from current file
How to wrap Wordpress wpautop in a container with a class for CSS manipulation
handle Request cannot be performed
How to acccess to another view in CodeIgniter?
Getting posts related to a keyword
Can we give bindvariables in php-oracle direclty in the Query?
Search + Sort in related model in GridView (yii2)
Multi step form - ajax response on the following step
Why Php Media Gallery not working?
Create html table with arrays and json data
Failed to move uploaded file to online server in php

Categories

HOME
rust
events
user-interface
lambda
blast
bots
haproxy
command-prompt
apk
informatica
tfs2015
sentry
tweepy
responsive-design
mailing-list
powermock
stimulsoft
sonata
twisted
vertica
nullreferenceexception
tortoisemerge
data-collection
webviewclient
unrar
running-object-table
sendmessage
region
guice
d3.js-v4
winsock
netbios
mongodb-3.4
apptentive
cups
eclipse-gmf
dagger
1wire
.net-micro-framework
sonicmq
gtk#
android-mediarecorder
nslayoutconstraint
http-basic-authentication
rcharts
petsc
multi-touch
svnserve
nunit-console
django-testing
always-on-top
system.net.mail
utf-16
m4
helm
ibm-was
ruby-on-rails-4.1
supercomputers
search-form
supersocket.net
embeddedwebserver
org-babel
unidata
prism-4
directorysearcher
microsoft-expression-web
ecos
gpu-programming
iosched
colon
mp4parser
.net-remoting
chartfx
spiral
jsplitpane
towers-of-hanoi
pcspim
netstream
litespeed
delphi-prism
net-use
grails-validation
bass
fgetc
.net-services
rawcontacts
efs
watchpoint

Resources

Encrypt Message