Laravel 6 Ajax Crud Tutorial Using DataTables From Scratch

laravel 6 DataTables Ajax Crud Tutorial – Today we are going to show, how to create crud operation using the yajra dataTable in laravel. We are going to show you how to create product list, create product, edit product and delete product with dataTable.

Today we are going to create product management using the yajra dataTables in laravel application. We will create easy laravel datatables crud operation using ajax.

Today we will create add, edit and delete using ajax without refresh (reload) a page on laravel datatables. We will use yajra dataTables Draw function to displaying the list without refresh.

Laravel DataTables Ajax Crud

Contents

  • Install Laravel 6 Setup
  • Setup database
  • Database Migration
  • Install Yajra DataTables
  • Create Route, Controller & Blade View
  • Start Development Server
  • Conclusion

Install Laravel

First We need Download fresh Laravel setup. Use the below command to download the laravel 6 fresh setup on your system.

composer create-project --prefer-dist laravel/laravel blog

Setup Database

After successfully download laravel Application, Go to your project .env file and set up database credential and move next step :

 DB_CONNECTION=mysql 
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=here your database name here
DB_USERNAME=here database username here
DB_PASSWORD=here database password here

Database Migration

Now we will create Product model and migration. Run below command

php artisan make:model Product --migration

The above comment will create a Model under app directory and a migration file named 2019_11_12_023506_create_products_table.php under path\to\your\project\database\migrations folder.

Now open migration file and put the below code

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateProductsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('products', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('title');
            $table->string('product_code');
            $table->string('description');
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('products');
    }
}

Now we will run below command to create table

php artisan migrate

This command will create necessary tables in our database.

Install Yajra Datatables Package in Laravel

Now We will Install Yajra Datatables Packages in your laravel application. Use the below command and install yajra packages in your laravel application.

composer require yajra/laravel-datatables-oracle

After successfully Install Yajra Datatables Packages, open config/app.php file and add service provider and alias.

 'providers' => [
     Yajra\Datatables\DatatablesServiceProvider::class,
 ],
 
 'aliases' => [
    'Datatables' => Yajra\Datatables\Facades\Datatables::class,
 ]  

After set providers and aliases then publish vendor run by following command.

php artisan vendor:publish --tag=datatables

The above command will create a file named datatables.php under config folder

Create CRB (Controller,Route,Blade)

Add Route

Now we will add routes in web.php file as like below.

Open routes/web.php file

Route::get('product-list', '[email protected]');
Route::get('product-list/{id}/edit', '[email protected]');
Route::post('product-list/store', '[email protected]');
Route::get('product-list/delete/{id}', '[email protected]');

Create Controller

We need to create new controller ProductController that will manage two method. lets use this below command and create Controller.

php artisan make:controller ProductController --resource

Now open the controller let’s go to the => app/Http/Controllers/ProductController.php. Now create some methods for add user, edit user and delete user.

<?php
 
namespace App\Http\Controllers;
 
use App\Product;
use Illuminate\Http\Request;
use Redirect,Response;
 
class ProductController extends Controller
{
/**
 * Display a listing of the resource.
 *
 * @return \Illuminate\Http\Response
 */
public function index()
{
    if(request()->ajax()) {
        return datatables()->of(Product::select('*'))
        ->addColumn('action', 'DataTables.action')
        ->rawColumns(['action'])
        ->addIndexColumn()
        ->make(true);
    }
    return view('list');
}
 
 
/**
 * Store a newly created resource in storage.
 *
 * @param  \Illuminate\Http\Request  $request
 * @return \Illuminate\Http\Response
 */
public function store(Request $request)
{  
    $productId = $request->product_id;
    $product   =   Product::updateOrCreate(['id' => $productId],
                ['title' => $request->title, 'product_code' => $request->product_code, 'description' => $request->description]);        
    return Response::json($product);
}
 
 
/**
 * Show the form for editing the specified resource.
 *
 * @param  \App\Product  $product
 * @return \Illuminate\Http\Response
 */
public function edit($id)
{   
    $where = array('id' => $id);
    $product  = Product::where($where)->first();
 
    return Response::json($product);
}
 
 
/**
 * Remove the specified resource from storage.
 *
 * @param  \App\Product  $product
 * @return \Illuminate\Http\Response
 */
public function destroy($id)
{
    $product = Product::where('id',$id)->delete();
 
    return Response::json($product);
}
}

Create Blade View

First Create Button view

We need to create action.blade.php file. This file contain two button name edit and delete.

<a href="javascript:void(0)" data-toggle="tooltip"  data-id="{{ $id }}" data-original-title="Edit" class="edit btn btn-success edit-product">
    Edit
</a>
<a href="javascript:void(0);" id="delete-product" data-toggle="tooltip" data-original-title="Delete" data-id="{{ $id }}" class="delete btn btn-danger">
    Delete
</a>

Next, create list.blade.php file in resources/views/ folder and copy past following code.

<!DOCTYPE html>
 
<html lang="en">
<head>
<!-- CSRF Token -->
<meta name="csrf-token" content="{{ csrf_token() }}">
<title>Laravel DataTable Ajax Crud Tutorial - Tuts Make</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css" />
<link  href="https://cdn.datatables.net/1.10.16/css/jquery.dataTables.min.css" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.js"></script>  
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.19.0/jquery.validate.js"></script>
<script src="https://cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
</head>
<body>
 
<div class="container">
<h2>Laravel DataTable Ajax Crud Tutorial - <a href="https://www.tutsmake.com" target="_blank">TutsMake</a></h2>
<br>
<a href="https://www.tutsmake.com/how-to-install-yajra-datatables-in-laravel/" class="btn btn-secondary">Back to Post</a>
<a href="javascript:void(0)" class="btn btn-info ml-3" id="create-new-product">Add New</a>
<br><br>
 
<table class="table table-bordered table-striped" id="laravel_datatable">
   <thead>
      <tr>
         <th>ID</th>
         <th>S. No</th>
         <th>Title</th>
         <th>Product Code</th>
         <th>Description</th>
         <th>Created at</th>
         <th>Action</th>
      </tr>
   </thead>
</table>
</div>
 
<div class="modal fade" id="ajax-product-modal" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
    <div class="modal-header">
        <h4 class="modal-title" id="productCrudModal"></h4>
    </div>
    <div class="modal-body">
        <form id="productForm" name="productForm" class="form-horizontal">
           <input type="hidden" name="product_id" id="product_id">
            <div class="form-group">
                <label for="name" class="col-sm-2 control-label">Title</label>
                <div class="col-sm-12">
                    <input type="text" class="form-control" id="title" name="title" placeholder="Enter Tilte" value="" maxlength="50" required="">
                </div>
            </div> 
            <div class="form-group">
                <label for="name" class="col-sm-2 control-label">Product Code</label>
                <div class="col-sm-12">
                    <input type="text" class="form-control" id="product_code" name="product_code" placeholder="Enter Tilte" value="" maxlength="50" required="">
                </div>
            </div>
 
            <div class="form-group">
                <label class="col-sm-2 control-label">Description</label>
                <div class="col-sm-12">
                    <input type="text" class="form-control" id="description" name="description" placeholder="Enter Description" value="" required="">
                </div>
            </div>
            <div class="col-sm-offset-2 col-sm-10">
             <button type="submit" class="btn btn-primary" id="btn-save" value="create">Save changes
             </button>
            </div>
        </form>
    </div>
    <div class="modal-footer">
        
    </div>
</div>
</div>
</div>
</body>

</html>

Script logic

Next we will create script tag and write some code for showing list, create product, edit product and delete product. In this script, put the below of after closing of body tag.

<script>
 var SITEURL = '{{URL::to('')}}';
 $(document).ready( function () {
   $.ajaxSetup({
      headers: {
          'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
      }
  });
  $('#laravel_datatable').DataTable({
         processing: true,
         serverSide: true,
         ajax: {
          url: SITEURL + "product-list",
          type: 'GET',
         },
         columns: [
                  {data: 'id', name: 'id', 'visible': false},
                  {data: 'DT_RowIndex', name: 'DT_RowIndex', orderable: false,searchable: false},
                  { data: 'title', name: 'title' },
                  { data: 'product_code', name: 'product_code' },
                  { data: 'description', name: 'description' },
                  { data: 'created_at', name: 'created_at' },
                  {data: 'action', name: 'action', orderable: false},
               ],
        order: [[0, 'desc']]
      });

 /*  When user click add user button */
    $('#create-new-product').click(function () {
        $('#btn-save').val("create-product");
        $('#product_id').val('');
        $('#productForm').trigger("reset");
        $('#productCrudModal').html("Add New Product");
        $('#ajax-product-modal').modal('show');
    });
 
   /* When click edit user */
    $('body').on('click', '.edit-product', function () {
      var product_id = $(this).data('id');
      $.get('product-list/' + product_id +'/edit', function (data) {
         $('#title-error').hide();
         $('#product_code-error').hide();
         $('#description-error').hide();
         $('#productCrudModal').html("Edit Product");
          $('#btn-save').val("edit-product");
          $('#ajax-product-modal').modal('show');
          $('#product_id').val(data.id);
          $('#title').val(data.title);
          $('#product_code').val(data.product_code);
          $('#description').val(data.description);
      })
   });

    $('body').on('click', '#delete-product', function () {
 
        var product_id = $(this).data("id");
       
        if(confirm("Are You sure want to delete !")){
          $.ajax({
              type: "get",
              url: SITEURL + "product-list/delete/"+product_id,
              success: function (data) {
              var oTable = $('#laravel_datatable').dataTable(); 
              oTable.fnDraw(false);
              },
              error: function (data) {
                  console.log('Error:', data);
              }
          });
        }
    }); 
  
   });
 
if ($("#productForm").length > 0) {
      $("#productForm").validate({
 
     submitHandler: function(form) {
 
      var actionType = $('#btn-save').val();
      $('#btn-save').html('Sending..');
      
      $.ajax({
          data: $('#productForm').serialize(),
          url: SITEURL + "product-list/store",
          type: "POST",
          dataType: 'json',
          success: function (data) {
 
              $('#productForm').trigger("reset");
              $('#ajax-product-modal').modal('hide');
              $('#btn-save').html('Save Changes');
              var oTable = $('#laravel_datatable').dataTable();
              oTable.fnDraw(false);
              
          },
          error: function (data) {
              console.log('Error:', data);
              $('#btn-save').html('Save Changes');
          }
      });
    }
  })
}
</script>

Start Development Server

We need to start development server. Use the php artisan serve command and start your server :

 php artisan serve
If you want to run the project diffrent port so use this below command
php artisan serve --port=8080

Now we are ready to run our example so run bellow command to quick run.

 http://localhost:8000/product-list

Conclusion

In this laravel datatables ajax crud tutorial , We have successfully create a product list using yajra datatables and also created add, edit, delete functionality without reloading the page.

If you have any questions or thoughts to share, use the comment form below to reach us.

129 Comments

  1. Jeff Jenkins said:

    If you’re using Yajra Datatables, it isn’t “from scratch”

    September 10, 2019
    Reply
  2. sirglio frei said:

    I think this internet site holds some rattling great info for everyone : D.

    October 9, 2019
    Reply
  3. Hameed Hussain said:

    Good Job and Thanks. It is very useful but some task missing. Where did you create the Product migration?

    and also I created everything as you said but when I click the save button, no response. When I check in the console I have error message like below
    cacheURL: “http://127.0.0.1:8000product-list/store”

    Please help me

    Thank you

    November 11, 2019
    Reply
    • w3path said:

      Hi Hussain,

      I have add missing things, thanks to pointing me there.

      About the error, The information you provide is not sufficient to find the issue but you can check the status code.

      If it is 500 then check the Apache error log. It will give you complete information about the issue

      If it is not 500 then check Laravel error log for the error.

      Thanks

      November 14, 2019
      Reply
  4. mark said:

    I have some errors, can you upload the code to github?

    November 24, 2019
    Reply
  5. mark said:

    solved the code you need a / in the routes of js
    url: SITEURL + “/product-list/store”,

    and the $ fillable fields need to be added to the Product model

    November 24, 2019
    Reply
  6. Roy said:

    This is what I have done so far to get things somewhat working. Modified the SITEURL:
    var SITEURL = ‘{{URL::to(”) }}’ + ‘/’;

    Added the protected fillable fields in the model which lets me add records…..
    but I can not get the action buttons to work, anyone have an idea

    January 2, 2020
    Reply
    • sadnux said:

      check where did you save the action.blade.php? if you save that file on resources\views\ then change location on index productcontroller.php from “->addColumn(‘action’, ‘DataTables.action’)” to “->addColumn(‘action’, ‘action’)”

      March 16, 2020
      Reply
  7. Ernst said:

    Hello, guys!

    I have made it work with my own custom fields and Model!

    I have read in your comments your problems, which were basically the same for me, so I will explain what I had to do to solve:

    1) As for the buttons, go to your Controller and look right for the line that says:
    ->addColumn(‘action’,’DataTables.action’) …
    THE SECOND Argument is actually the views blade route to the “action.blade.php”.

    2) For the editing issues, I had to modify the store controller. I had to add an if statement in order to identify whether it is about a new record or an updating one:

    public function store(Request $request){
    if($request->proyecto_id){
    //Se trata de una edición
    $proyecto = Proyecto::findOrFail($request->proyecto_id);
    }else{
    //Se trata de un archivo nuevo
    $proyecto = new Proyecto();
    }
    $proyecto->titulo = $request->titulo;
    $proyecto->titulo_individual = $request->titulo_individual;
    $proyecto->descripcion = $request->descripcion;
    $proyecto->save();

    return Response::json($proyecto);
    }

    ————————
    Hope this is useful for you.

    February 11, 2020
    Reply
  8. Ingo Hamann said:

    Hello friends,
    on my website there is a filter form to select some options for the datatable.
    If datatable requests data from server via ajax, it should send the actual filter status.
    I know, there is the option to send data via ajax on this way:
    ajax: {
    “url”: “{{ url()->full() }}”,
    “type”: “POST”,
    “data”: “…” ,
    },
    But I can find NO information, how to use this “data” option.
    Can you help me, please?
    Thx, Ingo

    April 24, 2020
    Reply
    • w3path said:

      You can use like this

      data: function ( d ) {
      d.myKey = “myValue”;
      }

      April 27, 2020
      Reply
      • Ingo Hamann said:

        Hello w3path,
        thank you for your reply! Yes, I found this with Google, too. And I tried it, but without any success. I don’t know, how to get the data on server side: $request->myKey? $_POST[‘myKey’]? Both did not work…
        Best regards, Ingo.

        April 28, 2020
        Reply
  9. Leisha Glowski said:

    GTA 5 money leave be very easy to add to your friend’s record without existence patterned by the mettlesome admins.

    January 2, 2021
    Reply
  10. Phillis said:

    If you poorness to get fun with your GTA 5 fearless,
    you can tally cheats so that you can succeed the
    things you slant in the line until for a period.

    Here is my web site … wings io

    January 13, 2021
    Reply
  11. Mohammed said:

    It’s a pity you don’t have a donate button! I’d
    most certainly donate to this superb blog!
    I guess for now i’ll settle for book-marking and adding your RSS feed to my Google account.
    I look forward to brand new updates and will talk about this site
    with my Facebook group. Chat soon!

    Also visit my blog post free instagram followers

    January 15, 2021
    Reply
  12. Veronique said:

    Hi to all, how is the whole thing, I think every one is getting more from
    this web page, and your views are nice designed for new visitors.

    Feel free to surf to my web page – Free Pokemon Go Spoofer

    January 15, 2021
    Reply
  13. Angelita said:

    Can I simply just say what a comfort to uncover somebody who really understands what
    they are talking about online. You actually know how to bring an issue to light and make it important.
    More people need to check this out and understand this side of your story.
    I can’t believe you aren’t more popular since you certainly
    have the gift.

    My homepage … psn code generator

    January 15, 2021
    Reply
  14. Laurinda said:

    Howdy would you mind stating which blog platform you’re working with?

    I’m planning to start my own blog in the near future
    but I’m having a difficult time deciding between BlogEngine/Wordpress/B2evolution and Drupal.
    The reason I ask is because your design seems different then most blogs and I’m looking for something completely unique.
    P.S Sorry for getting off-topic but I had to ask!

    My site :: GTA 5 Money Generator

    January 16, 2021
    Reply
  15. Nannette said:

    Hello! I could have sworn I’ve visited this website before but
    after browsing through many of the articles I realized
    it’s new to me. Anyways, I’m definitely happy I found it and I’ll be book-marking it and checking
    back frequently!

    My web site: robux generator

    January 16, 2021
    Reply
  16. Eugenio said:

    It is appropriate time to make some plans for the future and it is time to be happy.
    I have read this put up and if I may I wish to recommend you some fascinating things or
    tips. Perhaps you can write next articles referring to this article.
    I want to learn even more issues about it!

    Stop by my homepage roblox hack

    January 16, 2021
    Reply
  17. Boris said:

    I am regular visitor, how are you everybody? This piece of writing posted at this site is really fastidious.

    My site – xbox gift card generator

    January 16, 2021
    Reply
  18. Edwina said:

    There’s definately a great deal to learn about
    this subject. I like all of the points you’ve made.

    Feel free to visit my web site :: v bucks generator

    January 16, 2021
    Reply
  19. Enrique said:

    Wow, incredible weblog format! How lengthy have you ever been blogging for?

    you made running a blog look easy. The total glance of your web site is magnificent,
    as well as the content!

    My web-site – pokemon go hack

    January 16, 2021
    Reply
  20. Diane said:

    Hello, after reading this awesome article i am as well happy to share my knowledge here with friends.

    Have a look at my site: pubg mobile uc generator

    January 16, 2021
    Reply
  21. Jaxon said:

    Thank you for every other excellent article. Where else could anybody
    get that type of information in such a perfect
    means of writing? I have a presentation subsequent week, and I’m on the look for such information.

    Feel free to visit my web-site – Snapchat Hack

    January 16, 2021
    Reply
  22. Leonardo said:

    Attractive component to content. I just stumbled upon your blog and in accession capital to assert that I acquire actually enjoyed account your weblog posts.

    Any way I will be subscribing to your augment or even I achievement you access
    constantly rapidly.

    Here is my webpage; Clash of Clans Generator

    January 16, 2021
    Reply
  23. Rosella said:

    Hello there, You’ve done an incredible job.

    I’ll definitely digg it and personally recommend
    to my friends. I’m confident they will be benefited
    from this site.

    Feel free to visit my website: Clash of Clans Hack

    January 16, 2021
    Reply
  24. Caroline said:

    I was suggested this web site by my cousin. I’m not sure
    whether this post is written by him as no one else know such detailed about my
    trouble. You are amazing! Thanks!

    Here is my webpage; Tiktok Fans Generator

    January 16, 2021
    Reply
  25. Rudolf said:

    The other day, while I was at work, my cousin stole my apple ipad and tested to see if it can survive a
    30 foot drop, just so she can be a youtube sensation. My apple ipad is
    now broken and she has 83 views. I know this is entirely off topic but I had to share it with someone!

    Also visit my homepage: Tiktok Followers Generator

    January 16, 2021
    Reply
  26. Joanne said:

    Pretty nice post. I just stumbled upon your weblog and
    wanted to say that I’ve truly enjoyed surfing around your blog posts.
    In any case I will be subscribing to your feed and I hope you
    write again soon!

    Visit my blog post free robux

    January 16, 2021
    Reply
  27. Darell said:

    excellent issues altogether, you just received a logo new reader.

    What might you suggest in regards to your post that you simply
    made a few days in the past? Any certain?

    Have a look at my web-site – Robux Generator

    January 16, 2021
    Reply
  28. Bea said:

    Thank you for the auspicious writeup. It in truth was once a enjoyment
    account it. Glance complicated to more introduced agreeable from you!
    However, how could we keep up a correspondence?

    Look into my page … bingo blitz credits generator

    January 16, 2021
    Reply
  29. Russel said:

    whoah this weblog is great i like reading your posts.
    Stay up the great work! You understand, many people are searching round for this
    information, you can help them greatly.

    My blog :: Fortnite Skins Generator

    January 16, 2021
    Reply
  30. Bailey said:

    Currently it appears like BlogEngine is the top blogging platform available right now.

    (from what I’ve read) Is that what you’re using on your blog?

    Feel free to visit my blog post; call of duty mobile hack

    January 17, 2021
    Reply
  31. Karine said:

    This is my first time go to see at here and i am actually impressed
    to read everthing at alone place.

    Here is my web blog – Coin Maste Hack

    January 17, 2021
    Reply
  32. Jana said:

    I really love your site.. Very nice colors & theme.
    Did you develop this site yourself? Please reply back as I’m wanting to create my own personal website and would like to find out where you got
    this from or just what the theme is called. Thank you!

    Also visit my web blog – gems generator

    January 17, 2021
    Reply
  33. Phillip said:

    Nice respond in return of this matter with solid arguments and describing everything concerning that.

    my site; Coin Master Spins

    January 17, 2021
    Reply
  34. Jaxon said:

    It’s enormous that you are getting ideas from this piece of
    writing as well as from our dialogue made here.

    My homepage – Netflix Premium Generator

    January 17, 2021
    Reply
  35. Rachele said:

    You made some good points there. I looked on the
    net for more information about the issue and found most individuals will go along with your views
    on this web site.

    Also visit my webpage; Homescapes Hack

    January 17, 2021
    Reply
  36. Chad said:

    At this time I am going away to do my breakfast, when having my breakfast coming over again to read other news.

    Stop by my web-site: pixel gun 3d hack

    January 17, 2021
    Reply
  37. Elke said:

    Good day! I know this is somewhat off topic
    but I was wondering if you knew where I could locate a captcha plugin for my comment form?
    I’m using the same blog platform as yours and I’m having
    difficulty finding one? Thanks a lot!

    my website Pubg mobile uc hack

    January 17, 2021
    Reply
  38. Luigi said:

    I really like what you guys tend to be up too.

    This sort of clever work and coverage! Keep up the very good works
    guys I’ve incorporated you guys to my blogroll.

    My blog post; xbox code generator

    January 17, 2021
    Reply
  39. Vanessa said:

    I am sure this paragraph has touched all the internet users, its really really nice article on building up new website.

    My homepage Braw Stars Generator

    January 17, 2021
    Reply
  40. Marcella said:

    Greetings I am so glad I found your website, I really found you by
    accident, while I was researching on Askjeeve for something else, Regardless I am here now and would just like to say kudos for a fantastic post and
    a all round enjoyable blog (I also love the theme/design), I don’t have time to
    read through it all at the moment but I have bookmarked it and also added in your RSS feeds, so when I have time I will be
    back to read a lot more, Please do keep up the awesome jo.

    Here is my blog: xbox gift card generator

    January 27, 2021
    Reply
  41. Ezra said:

    Way cool! Some extremely valid points! I appreciate you writing this article plus the rest of the
    site is really good.

    my blog post; imvu hack credits

    January 27, 2021
    Reply
  42. Damon said:

    We stumbled over here different website and thought I should check things out.
    I like what I see so now i am following you. Look forward
    to looking over your web page yet again.

    my site – minecraft account generator

    January 27, 2021
    Reply
  43. Teri said:

    Superb blog! Do you have any helpful hints for aspiring writers?
    I’m planning to start my own website soon but I’m a little
    lost on everything. Would you recommend starting with
    a fortnite free skins platform like WordPress or
    go for a paid option? There are so many options out there that I’m totally
    confused .. Any suggestions? Thanks a lot!

    January 27, 2021
    Reply
  44. Edith said:

    What’s Going down i’m new to this, I stumbled upon this I have discovered It positively useful and it has aided me out
    loads. I hope to give a contribution & help other
    customers like its aided me. Great job.

    Here is my page; PES 2021 Hack

    January 27, 2021
    Reply
  45. Allan said:

    I pay a quick visit every day a few web sites
    and blogs to read posts, but this blog gives feature based writing.

    Feel free to visit my web blog; amazon gift card generator

    January 27, 2021
    Reply
  46. Belle said:

    It’s really a nice and helpful piece of info.
    I’m satisfied that you shared this useful info with us.
    Please keep us informed like this. Thank you for sharing.

    Also visit my homepage netflix premium accounts

    January 27, 2021
    Reply
  47. Jina said:

    Hello, I desire to subscribe for this blog to get newest updates, so where can i do it please help out.

    Have a look at my homepage: call of duty cp hack

    January 27, 2021
    Reply
  48. Anton said:

    I’m not that much of a internet reader to be honest but your
    sites really nice, keep it up! I’ll go ahead and bookmark your website to come back later on.
    Many thanks

    Review my web-site – bingo blitz free credits

    January 27, 2021
    Reply
  49. Jude said:

    You actually make it seem so easy with your presentation but I find this
    topic to be really something that I think I would never understand.
    It seems too complicated and very broad for me.
    I am looking forward for your next post, I’ll
    try to get the hang of it!

    Feel free to visit my blog; tiktok followers generator

    January 27, 2021
    Reply
  50. Barrett said:

    Hello there! This is my first comment here so I just wanted to give
    a quick shout out and tell you I genuinely enjoy reading your articles.
    Can you suggest any other blogs/websites/forums that cover
    the same subjects? Many thanks!

    Take a look at my web page … roblox robux generator

    January 27, 2021
    Reply
  51. Vickie said:

    I was recommended this web site by my cousin. I’m not sure whether this post is written by him as no one else know such detailed
    about my difficulty. You’re incredible! Thanks!

    Here is my website … psn code generator

    January 27, 2021
    Reply
  52. Guadalupe said:

    Why visitors still make use of to read news papers when in this technological world the whole thing is available on web?

    Also visit my page; JeraldineELi

    January 28, 2021
    Reply
  53. Neal said:

    Thanks for ones marvelous posting! I quite enjoyed reading it, you happen to be a great author.I will make certain to
    bookmark your blog and will come back from now on. I want to encourage one to continue your great job, have a nice evening!

    My blog; cheap flights

    January 29, 2021
    Reply
  54. Lola said:

    Hello, I would like to subscribe for this webpage to obtain newest updates, thus where can i do it
    please assist.

    Also visit my homepage: cheap flights

    January 29, 2021
    Reply
  55. Chara said:

    I always spent my half an hour to read this website’s articles everyday along with a cup of coffee.

    My web blog cheap flights

    January 30, 2021
    Reply
  56. Moises said:

    I’m pretty pleased to discover tһis web site. I want tо to thank you for your time for this
    particularly fantastic reɑd!! I definitеly reɑlly ⅼiked eveгy little bit
    of it and i also hаѵe y᧐u bookmarked to check out new sstuff іn your blog.

    Feel free toо visit myy blog :: coin master daily spin

    February 1, 2021
    Reply
  57. Abbie said:

    Very energetic article, I liked that bit. Will there be a part
    2?

    Here is my web page; LivU App Hack

    February 2, 2021
    Reply
  58. Lee said:

    You made some really good points there. I checked on the net to find out more about the issue and found most individuals will go along with your views on this site.

    my page: Linduu Hack

    February 2, 2021
    Reply
  59. Kristeen said:

    Hello, after reading this remarkable piece of writing i am too glad to share
    my knowledge here with colleagues.

    Here is my webpage: OnlyFans Hack

    February 2, 2021
    Reply
  60. Pat said:

    Excellent beat ! I would like to apprentice even as
    you amend your web site, how could i subscribe for a weblog site?
    The account aided me a appropriate deal. I
    had been a little bit acquainted of this your
    broadcast offered shiny clear idea

    My blog … paypal money adder

    February 2, 2021
    Reply
  61. Ethel said:

    Woah! I’m really digging the template/theme of this site.
    It’s simple, yet effective. A lot of times it’s tough to get that “perfect balance” between usability and
    visual appeal. I must say you have done a great job with this.
    In addition, the blog loads extremely quick for me on Internet explorer.
    Superb Blog!

    my blog cheap flights – tinyurl.com,

    February 2, 2021
    Reply
  62. Suzette said:

    Hello, i think that i saw you visited my website
    so i came to “return the favor”.I’m attempting to find
    things to improve my website!I suppose its
    ok to use a few of your ideas!!

    Feel free to visit my website – PES Money Generator

    February 2, 2021
    Reply
  63. Donna said:

    Wow, marvelous weblog structure! How lengthy have you been blogging for?
    you made running a blog glance easy. The entire glance of
    your site is excellent, let alone the content
    material!

    Also visit my web page – cheap flights

    February 2, 2021
    Reply
  64. Elias said:

    Great blog! Is your theme custom made or did you download it from somewhere?
    A design like yours with a few simple adjustements would really make
    my blog jump out. Please let me know where you got your design. Kudos

    Here is my blog Plants vs Zombies 2 Hack

    February 2, 2021
    Reply
  65. Darcy said:

    It’s really very complicated in this full of activity life
    to listen news on Television, therefore I simply use web for that purpose, and obtain the latest news.

    Also visit my web-site: 8 Ball Pool Coins

    February 2, 2021
    Reply
  66. Sima said:

    you’re in point of fact a excellent webmaster.
    The web site loading pace is amazing. It seems that you’re doing any
    distinctive trick. Also, The contents are masterwork. you’ve done
    a fantastic job on this topic!

    Have a look at my webpage :: apex legends hack

    February 2, 2021
    Reply
  67. Alan said:

    It’s really a great and helpful piece of info. I’m
    glad that you just shared this useful information with us.
    Please keep us up to date like this. Thanks for sharing.

    Also visit my web page: Archero Hack

    February 2, 2021
    Reply
  68. Sherrill said:

    I do not even understand how I ended up right here, however I believed
    this put up was great. I don’t know who you’re but
    definitely you are going to a famous blogger in case you
    aren’t already. Cheers!

    Review my website … Dragon Ball Legends Hack

    February 2, 2021
    Reply
  69. Blanche said:

    Howdy! This is my first visit to your blog! We are a collection of volunteers and starting a
    new initiative in a community in the same niche. Your blog provided us valuable information to
    work on. You have done a wonderful job!

    Here is my page: Bus Simulator Hack

    February 3, 2021
    Reply
  70. Nancy said:

    Do you have a spam problem on this site; I also am a blogger, and I was wondering your situation; many of us have developed some nice practices and we are looking to exchange solutions with others, please
    shoot me an email if interested.

    my web blog – Lords Mobile Hack

    February 3, 2021
    Reply
  71. Luis said:

    You have made some really good points there.

    I checked on the web for more information about the issue and
    found most people will go along with your views on this web site.

    my blog; PUBG Mobile Lite Hack

    February 3, 2021
    Reply
  72. Jolene said:

    If you desire to grow your experience just keep visiting this website and be updated with the most up-to-date gossip posted here.

    Feel free to visit my website; Red Ball 4 Hack

    February 3, 2021
    Reply
  73. Justin said:

    Link exchange is nothing else but it is simply placing
    the other person’s website link on your page at proper place and other person will also do same
    for you.

    Here is my webpage cheap flights; http://tinyurl.com/y2nrm5ky,

    February 3, 2021
    Reply
  74. Samuel said:

    Appreciation to my father who shared with me regarding this website,
    this blog is actually awesome.

    Check out my web site :: Soccer Manager 2021 Hack

    February 3, 2021
    Reply
  75. Dirk said:

    It is not my first time to pay a visit this web site, i am browsing this web
    page dailly and take fastidious information from here everyday.

    Also visit my site; Soccer Stars Hack

    February 3, 2021
    Reply
  76. Jack said:

    Admiring the dedication you put into your site and detailed information you provide.
    It’s good to come across a blog every once in a while that isn’t the
    same old rehashed material. Wonderful read! I’ve saved your site and I’m including
    your RSS feeds to my Google account.

    Here is my website … Steam Gift Card Generator

    February 3, 2021
    Reply
  77. Vernon said:

    Today, I went to the beach with my kids. I found a sea shell and gave
    it to my 4 year old daughter and said “You can hear the ocean if you put this to your ear.” She
    put the shell to her ear and screamed. There was a hermit crab inside and it pinched her
    ear. She never wants to go back! LoL I know this is
    totally off topic but I had to tell someone!

    Feel free to surf to my webpage; Valorant Hack

    February 3, 2021
    Reply
  78. Catherine said:

    I absolutely love your blog.. Excellent colors & theme. Did you develop this website yourself?
    Please reply back as I’m trying to create my own site and would like to
    know where you got this from or what the theme is named.

    Kudos!

    Here is my site … itunes Gift Card Generator

    February 3, 2021
    Reply
  79. Jesus said:

    It’s great that you are getting ideas from this paragraph as well
    as from our discussion made at this time.

    Feel free to visit my blog … Star Stable Hack

    February 3, 2021
    Reply
  80. Paul said:

    You really make it seem really easy with your presentation but I find this topic to be really something that I feel I’d
    by no means understand. It sort of feels too complex and extremely broad for me.

    I am having a look forward on your next post, I’ll try to get the hang of it!

    Feel free to visit my web blog; Star Wars Hack

    February 3, 2021
    Reply
  81. Coin Master Tips said:

    How do you compute the start-up costs for starting a website?

    February 3, 2021
    Reply
  82. Roblox Tips said:

    Is there any sites which offer unpublished articles free for copyright?Free to print and publish in our name?

    February 4, 2021
    Reply
  83. Polly said:

    I like the valuable info you provide in your articles.

    I will bookmark your blog and check again here regularly. I’m quite certain I’ll learn a lot of new stuff right here!
    Good luck for the next!

    Feel free to surf to my homepage; Google Play Gift Card Code

    February 4, 2021
    Reply
  84. Gail said:

    Oh my goodness! Incredible article dude! Many thanks, However I am going through difficulties with your RSS.
    I don’t understand why I can’t subscribe to
    it. Is there anybody else having the same RSS problems? Anyone that
    knows the solution will you kindly respond?
    Thanks!!

    Feel free to visit my webpage Mafia City Hack

    February 4, 2021
    Reply
  85. Roderick said:

    Wonderful post! We are linking to this great post on our site.
    Keep up the great writing.

    Also visit my blog post – Netflix Gift Codes

    February 4, 2021
    Reply
  86. Miquel said:

    Right here is the perfect web site for anyone who really wants to find out about
    this topic. You realize a whole lot its almost tough to argue with you (not that I actually would
    want to…HaHa). You certainly put a fresh spin on a
    subject which has been discussed for ages. Wonderful stuff, just wonderful!

    Here is my web page: Roblox Gift Card Generator

    February 4, 2021
    Reply
  87. Alejandrina said:

    Hello there, You’ve done an incredible job. I
    will certainly digg it and personally recommend to my
    friends. I am confident they will be benefited from this website.

    My web-site :: Pokemon Masters Hack

    February 4, 2021
    Reply
  88. Anastasia said:

    Does your site have a contact page? I’m having a tough time locating it but, I’d like to shoot
    you an e-mail. I’ve got some ideas for your blog
    you might be interested in hearing. Either way, great site and I look forward to seeing it improve over time.

    My web-site: Top Eleven Hack

    February 4, 2021
    Reply
  89. Jamison said:

    If some one wishes expert view on the topic of blogging and site-building afterward i recommend him/her to visit this website, Keep up the pleasant job.

    Also visit my blog: Walmart Gift Card Generator

    February 4, 2021
    Reply
  90. Marcelino said:

    Why visitors still make use of to read news papers when in this technological world
    the whole thing is existing on net?

    Feel free to visit my web-site: Cash App Generator

    February 4, 2021
    Reply
  91. Walker said:

    It’s perfect time to make some plans for the long run and it is time to be
    happy. I’ve read this submit and if I could I desire to
    counsel you some interesting issues or tips. Maybe you
    could write subsequent articles referring to this article.
    I wish to read more issues approximately it!

    My web page: Dragon City Hack

    February 4, 2021
    Reply
  92. Jerry said:

    Pretty! This was a really wonderful article. Thanks for providing this information.

    my website :: Pubg Free Uc Generator

    February 4, 2021
    Reply
  93. Kbcxbype said:

    walgreens online pharmacy pharmacy canada online pharmacies in usa

    February 6, 2021
    Reply
  94. Reuben said:

    Wonderful article! This is the type of info that are meant to be shared across the internet.

    Disgrace on the seek engines for not positioning this put
    up higher! Come on over and talk over with my site .
    Thank you =)

    my blog post … Pubg Mobile Uc Hilesi

    February 8, 2021
    Reply
  95. Lbsxguany said:

    meds online without doctor prescription top viagra dapoxetine pharmacy cheap no prescription

    February 8, 2021
    Reply
  96. Marta said:

    I am really thankful to the holder of this
    web page who has shared this fantastic piece of writing at here.

    My web-site … cheap flights (http://tinyurl.com/y5bpnj98)

    February 12, 2021
    Reply
  97. Mackenzie said:

    This article will help the world wide web people for building up new
    website or perhaps a blog from start to end.

    Also visit my site … TobyKSmallin

    February 16, 2021
    Reply
  98. Paula said:

    Ebook Online Textbook Energy And Environmental Science Impact Factor 2012

    My blog post: wordpress.com

    February 16, 2021
    Reply
  99. Wally said:

    Superb post however , I was wondering if you could write a litte more on this topic?
    I’d be very thankful if you could elaborate a little bit further.
    Thank you!

    Here is my blog post … filofax stickers

    February 21, 2021
    Reply
  100. zachary said:

    the modal show not working in vue + laravel project, please help, thanks

    February 25, 2021
    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *