------------ HTML
<form role="form" action="<?php echo base_url('user/profile');?>" method="post" enctype="multipart/form-data">
<input type="file" name="userfile" id="user_profile_pic" required>
<input type="hidden" name="userid" value="<?php echo isset($customer[0]['id'])? $customer[0]['id'] : false; ?>">
<button class="label label-sm btnorange" type="submit" name="uploadpic" > Update </button>
<div id="alertmsg"></div>
</form>
------------ PHP
public function profile()
{
$id = $this->session->userdata('id');
if(isset($_POST['uploadpic']) || isset($_POST['userfile']))
{
$userid = trim($this->input->post('userid'));
$wherei = array(
'id' => $userid
);
$image = $_FILES['userfile']['tmp_name'];
$nameimage = $_FILES['userfile']['name'];
$foldername="assets/userimages/";
if(!is_dir($foldername))
{
mkdir($foldername, 0777, true);
}
if(move_uploaded_file($image, $foldername . $nameimage)){
$updatedata = array(
'image' => $nameimage
);
$is_update = $this->user_model->UPDATEDATA('user',$wherei, $updatedata);
if($is_update){
$this->session->set_flashdata("success","Update Successfully.");
redirect('user/profile');
}else{
$this->session->set_flashdata("failed","Update Failed.");
redirect('user/profile');
}
}else{
$this->session->set_flashdata("failed","upload Failed.");
redirect('user/profile');
}
}
}
----------------- JQUERY
<script>
$("#user_profile_pic").change(function() {
var val = $(this).val();
switch(val.substring(val.lastIndexOf('.') + 1).toLowerCase()){
case 'jpeg': case 'jpg': case 'png':
break;
default:
$(this).val('');
$('#alertmsg').html("Please upload .jpg , .png or .jpeg only.");
break;
}
});
</script>
<form role="form" action="<?php echo base_url('user/profile');?>" method="post" enctype="multipart/form-data">
<input type="file" name="userfile" id="user_profile_pic" required>
<input type="hidden" name="userid" value="<?php echo isset($customer[0]['id'])? $customer[0]['id'] : false; ?>">
<button class="label label-sm btnorange" type="submit" name="uploadpic" > Update </button>
<div id="alertmsg"></div>
</form>
------------ PHP
public function profile()
{
$id = $this->session->userdata('id');
if(isset($_POST['uploadpic']) || isset($_POST['userfile']))
{
$userid = trim($this->input->post('userid'));
$wherei = array(
'id' => $userid
);
$image = $_FILES['userfile']['tmp_name'];
$nameimage = $_FILES['userfile']['name'];
$foldername="assets/userimages/";
if(!is_dir($foldername))
{
mkdir($foldername, 0777, true);
}
if(move_uploaded_file($image, $foldername . $nameimage)){
$updatedata = array(
'image' => $nameimage
);
$is_update = $this->user_model->UPDATEDATA('user',$wherei, $updatedata);
if($is_update){
$this->session->set_flashdata("success","Update Successfully.");
redirect('user/profile');
}else{
$this->session->set_flashdata("failed","Update Failed.");
redirect('user/profile');
}
}else{
$this->session->set_flashdata("failed","upload Failed.");
redirect('user/profile');
}
}
}
----------------- JQUERY
<script>
$("#user_profile_pic").change(function() {
var val = $(this).val();
switch(val.substring(val.lastIndexOf('.') + 1).toLowerCase()){
case 'jpeg': case 'jpg': case 'png':
break;
default:
$(this).val('');
$('#alertmsg').html("Please upload .jpg , .png or .jpeg only.");
break;
}
});
</script>
https://stackoverflow.com/questions/3828554/how-to-allow-input-type-file-to-accept-only-image-files
ReplyDeleteinput type="file" name="myImage" accept="image/x-png,image/gif,image/jpeg"
input type="file" name="myImage" accept="image/*"