Skip to main content

Store and update data from ajax with file also using formdata

Script
<script>
$.ajaxSetup({
headers: {
"X-CSRF-TOKEN": jQuery(`meta[name="csrf-token"]`).attr("content")
}
});


$(document).ready(function () {
$('.dropify').dropify();
$("#msform").on('submit', (e) => {
// $("#msform").submit(function() {
e.preventDefault();
// var innovationvalue = new FormData();
// innovationvalue.append('logo', this);
// this.preventDefault();

var form = $('#msform')[0];
var innovationvalue = new FormData(form);

console.log(innovationvalue);
// alert(innovationvalue);
$.ajax({
async: false,
method: 'POST',
// type: 'PUT',
url: 'innovationstore',
data: innovationvalue,
dataType: 'json',
enctype: "multipart/form-data",
processData: false, // Important!
contentType: false,
cache: false,
}).done((result) => {
// alert(result);
$('#loader').css('display', 'none');
console.log("------done------");
console.log(result);

$("#innovationid").val(result);
// location.reload();


}).fail((error) => {
// alert(result);
console.log("------fail------");
$('#loader').css('display', 'none');
console.log(error);
// location.reload();

});
});
});

</script>

<form method="POST" action="" enctype="multipart/form-data" id="msform">
...
input fields
...
</form>


controller
public function innovationstore(Request $request)
{
$input = $request->all();
$logo = '';
if (!empty($request->file('logo'))) {
$file = $request->file('logo');
$path = public_path() . '/InnovationImage';
$name = uniqid() . '_' . $file->getClientOriginalName();
$name = str_replace(' ', '_', $name);
if ($file->move($path, $name)) {
$logo = $name;
$input['logo'] = $logo;
}
}
$projecttitle = $request->projecttitle;
$slug = str_slug($projecttitle, '-');
$input['slug'] = $slug;
$id="";
// return($input);
if($input['id']==null) {
$status = Innovation::create($input);
$id = $status->id;
}
else {
$innovation=Innovation::find($input['id']);
$innovation->problemandcontext=$input['problemandcontext'];
$innovation->innovationbrought=$input['innovationbrought'];
$innovation->marketopportunity=$input['marketopportunity'];
$innovation->impact=$input['impact'];
$innovation->sustainability=$input['sustainability'];
// return ($input);
$status = $innovation->update();
$id = $input['id'];
}
return json_encode($status);
// return redirect('frontend/index');
}







Comments

Popular posts from this blog

Integration of adminlte admin pannel in laravel 6 adn above

Create new laravel project : laravel new projectname --auth Steps to integrate admin pannel i.e. adminlte 1.  composer require jeroennoten/laravel-adminlte 2.  php artisan adminlte:install 3.  php artisan adminlte:install --only=auth_views 4. php artisan vendor:publish --provider="JeroenNoten\LaravelAdminLte\AdminLteServiceProvider" --tag=views Filemanager: https://unisharp.github.io/laravel-filemanager/installation 1.  composer require unisharp/laravel-filemanager:~1.8 php artisan vendor:publish --tag = lfm_config php artisan vendor:publish --tag = lfm_public 3.  php artisan route:clear php artisan config:clear you will get a problem regarding file relode after upload and to solve do this fix it on vendor\unisharp\laravel-filemanager\src\Controllers\UploadController.php replace line 60 return count($this->errors) > 0 ? $this->errors : parent::$success_response; by return count($this->errors) > 0 ? ...

laravel file manager sorting by time default

Ref :  https://github.com/UniSharp/laravel-filemanager/issues/337 To load files order by "time DESC" you can change the code in vendor/unisharp/laravel-filemanager/src/traits/LfmHelpers.php public function sortFilesAndDirectories($arr_items, $sort_type) { if ($sort_type == 'time') { $key_to_sort = 'updated'; } elseif ($sort_type == 'alphabetic') { $key_to_sort = 'name'; } else { $key_to_sort = 'updated'; } return strcmp($a->{$key_to_sort}, $b->{$key_to_sort}); }); return $arr_items; } with public function sortFilesAndDirectories($arr_items, $sort_type) { if ($sort_type == 'time') { $key_to_sort = 'updated'; } elseif ($sort_type == 'alphabetic') { $key_to_sort = 'name'; } else { $key_to_sort = 'updated'; ...

Convert Html PAge to PDF using Canvas

Link :https://www.quora.com/How-we-export-html-page-as-pdf-using-pure-javascript app.js ( function (){ var form = $ ( '. printme ' ), cache_width = form . width (), a4 =[ 595.28 , 841.89 ]; // for a4 size paper width and height $ ( '#create_pdf' ). on ( 'click' , function (){ $ ( 'body' ). scrollTop ( 0 ); createPDF (); }); //create pdf function createPDF (){ getCanvas (). then ( function (canvas){ var img = canvas. toDataURL ( "image/png" ), doc = new jsPDF ({ unit : 'px' , format : 'a4' }); doc . addImage ( img , 'JPEG' , 20 , 20 ); doc . save ( 'FinalPrint.pdf' ); form . width ( cache_width ); }); } // create canvas object function getCanvas (){ form . width (( a4 [ 0 ]* 1.33333 ) ...