Laravel - Insérer des enregistrements

Nous pouvons insérer l'enregistrement en utilisant le DB façade avec insertméthode. La syntaxe de la méthode d'insertion est indiquée dans le tableau suivant.

Syntaxe insert booléen (chaîne $ query, array $ bindings = array ())
Paramètres
  • $ query (string) - requête à exécuter dans la base de données
  • $ bindings (array) - valeurs à lier avec des requêtes
Retour booléen
La description Exécutez une instruction d'insertion sur la base de données.

Exemple

Step 1 - Exécutez la commande ci-dessous pour créer un contrôleur appelé StudInsertController

php artisan make:controller StudInsertController --plain

Step 2 - Après l'exécution réussie de l'étape 1, vous recevrez la sortie suivante -

Step 3 - Copiez le code suivant dans un fichier

app/Http/Controllers/StudInsertController.php

app/Http/Controllers/StudInsertController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use DB;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class StudInsertController extends Controller {
   public function insertform() {
      return view('stud_create');
   }
	
   public function insert(Request $request) {
      $name = $request->input('stud_name');
      DB::insert('insert into student (name) values(?)',[$name]);
      echo "Record inserted successfully.<br/>";
      echo '<a href = "/insert">Click Here</a> to go back.';
   }
}

Step 4 - Créez un fichier de vue appelé resources/views/stud_create.php et copiez le code suivant dans ce fichier.

resources/views/stud_create.php

<html>
   <head>
      <title>Student Management | Add</title>
   </head>

   <body>
      <form action = "/create" method = "post">
         <input type = "hidden" name = "_token" value = "<?php echo csrf_token(); ?>">
         <table>
            <tr>
               <td>Name</td>
               <td><input type='text' name='stud_name' /></td>
            </tr>
            <tr>
               <td colspan = '2'>
                  <input type = 'submit' value = "Add student"/>
               </td>
            </tr>
         </table>
      </form>
      
   </body>
</html>

Step 5 - Ajoutez les lignes suivantes dans app/Http/routes.php.

app/Http/routes.php

Route::get('insert','[email protected]');
Route::post('create','[email protected]');

Step 6 - Visitez l'URL suivante pour insérer l'enregistrement dans la base de données.

http://localhost:8000/insert

Step 7 - La sortie apparaîtra comme indiqué dans l'image suivante.