当前位置: 首页 > 文档资料 > Laravel 入门教程 >

Insert Records

优质
小牛编辑
119浏览
2023-12-01

我们可以使用DB facade使用insert方法插入记录。 insert方法的语法如下表所示。

Syntaxbool insert(string $ query,array $ bindings = array())
Parameters
  • $ query(string) - 在数据库中执行的查询
  • $ bindings(array) - 要与查询绑定的值
Returnsbool
Description对数据库运行insert语句。

例子 (Example)

Step 1 - 执行以下命令以创建名为StudInsertController的控制器

php artisan make:controller StudInsertController --plain

Step 2 - 成功执行第1步后,您将收到以下输出 -

StudInsertController

Step 3 - 将以下代码复制到文件

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 - 创建名为resources/views/stud_create.php的视图文件,并在该文件中复制以下代码。

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 - 在app/Http/routes.php添加以下行。

app/Http/routes.php

Route::get('insert','StudInsertController@insertform');
Route::post('create','StudInsertController@insert');

Step 6 - 访问以下URL以在数据库中插入记录。

http://localhost:8000/insert

Step 7 - 输出将如下图所示。

插入记录