Friday, September 5, 2025
HomeLanguagesLaravel | Delete Records

Laravel | Delete Records

To delete records we can use DB facade with the delete method. To do so follow the below steps one by one:

  • Step 1: Create Controller UserController by executing this command.
    php artisan make:controller UserController

  • Step 2: We can delete records in two ways.

    First Method: The first is to delete direct using database command. Write following Code in App/Http/Controllers/UserController.php




    <?php
    namespace App\Http\Controllers;
    use Illuminate\Http\Request;
    use DB;
    class UserController extends Controller {
           public function index() 
           {
              $users = DB::select('SELECT * FROM users');
              return view('user', ['users'=>$users]);
           }
           public function destroy($id
           {
              DB::delete('DELETE FROM users WHERE id = ?', [$id]);
              echo ("User Record deleted successfully.");
              return redirect()->route('users.index');
           }
    }

    
    

    Second Method: The second way is to delete using the Laravel delete Function and User Model (Easy one).




    <?php
    namespace App\Http\Controllers;
    use Illuminate\Http\Request;
    use App\User;
    class UserController extends Controller {
           public function index() 
           {
              $users = User::All();
              return view('user', ['users'=>$users]);
           }
           public function destroy($id
           {
              $user = User::where('id', $id)->firstorfail()->delete();
              echo ("User Record deleted successfully.");
              return redirect()->route('users.index');
           }
    }

    
    
  • Step 3: Implementation or Driver Code and create web routes for implementation of the above code in routes/web.php




    <?php
    Route::get('/user', 'UserController@index')->name('users.index');
    Route::delete('/user/{id}', 'UserController@destroy')
        ->name('users.destroy');
    ?>

    
    
  • Step 4: Create a View File from where we display our users in resources/views directory name user.blade.php. Write following HTML code.




    <!DOCTYPE html>
    <html>
      
    <head>
        <title>Users Record</title>
        <style type="text/css">
            table {
                color: #333;
                font-family: sans-serif;
                width: 640px;
                border-collapse: collapse;
                border-spacing: 0;
            }
              
            td,
            th {
                border: 1px solid #CCC;
                height: 30px;
            }
              
            th {
                background: #F3F3F3;
                font-weight: bold;
            }
              
            td {
                background: #FAFAFA;
                text-align: center;
            }
        </style>
    </head>
      
    <body>
        <table>
            <tr>
                <td>ID</td>
                <td>Name</td>
                <td>Email</td>
                <td>Delete</td>
            </tr>
            @foreach ($users as $user)
            <tr>
                <td>{{ $user->id }}</td>
                <td>{{ $user->name }}</td>
                <td>{{ $user->email }}</td>
                <td><a href="{{ route('users.index') }}" 
                       onclick="event.preventDefault();
                        document.getElementById(
                          'delete-form-{{$user->id}}').submit();">
                     Delete 
                    </a>
                </td>
                <form id="delete-form-{{$user->id}}" 
                      + action="{{route('users.destroy', $user->id)}}"
                      method="post">
                    @csrf @method('DELETE')
                </form>
            </tr>
            @endforeach
        </table>
    </body>
      
    </html>

    
    
  • Step 5: Start the server by executing php artisan:serve command and go to http://localhost:8000/user and the output will be:
  • Output: Click on the delete button to get the record deleted. After deleting two records output is:
RELATED ARTICLES

Most Popular

Dominic
32267 POSTS0 COMMENTS
Milvus
81 POSTS0 COMMENTS
Nango Kala
6635 POSTS0 COMMENTS
Nicole Veronica
11801 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11865 POSTS0 COMMENTS
Shaida Kate Naidoo
6752 POSTS0 COMMENTS
Ted Musemwa
7026 POSTS0 COMMENTS
Thapelo Manthata
6703 POSTS0 COMMENTS
Umr Jansen
6720 POSTS0 COMMENTS