精品熟女碰碰人人a久久,多姿,欧美欧美a v日韩中文字幕,日本福利片秋霞国产午夜,欧美成人禁片在线观看

Laravel 使用數(shù)據(jù)庫(kù)

laravel 使用數(shù)據(jù)庫(kù)

laravel使用數(shù)據(jù)庫(kù)處理非常簡(jiǎn)單。laravel目前支持以下4個(gè)數(shù)據(jù)庫(kù):

  • mysql
  • postgres
  • sqlite
  • sql server

可以使用原始sql,流暢的查詢構(gòu)建器和eloquent orm來(lái)觸發(fā)對(duì)數(shù)據(jù)庫(kù)的查詢。為了理解laravel的所有crud(創(chuàng)建,讀取,更新,刪除)操作,我們將使用簡(jiǎn)單的學(xué)生管理系統(tǒng)。

 

連接到數(shù)據(jù)庫(kù)

在 config/database.php 文件中 配置數(shù)據(jù)庫(kù), 并使用mysql中的結(jié)構(gòu)創(chuàng)建大學(xué)數(shù)據(jù)庫(kù),如下表所示。

數(shù)據(jù)庫(kù):college

表:student

列名稱 列數(shù)據(jù)類型 額外
id int(11) 主鍵| 自動(dòng)遞增
名稱 varchar(25)  

我們將看到如何使用laravel在學(xué)生表中添加,刪除,更新和檢索數(shù)據(jù)庫(kù)中的記錄。

 

插入記錄

我們可以使用db facade使用insert方法插入記錄。insert方法的語(yǔ)法如下表所示。

syntax bool insert(string $query, array $bindings = array())
parameters
  • $query(string) ? query to execute in database
  • $bindings(array) ? values to bind with queries
returns bool
description run an insert statement against the database.

 

實(shí)例

步驟1 - 執(zhí)行以下命令以創(chuàng)建名為studinsertcontroller的控制器

php artisan make:controller studinsertcontroller --plain

第2步 - 成功執(zhí)行第1步后,您將收到以下輸出 -

第3步 - 將以下代碼復(fù)制到文件

app/http/controllers/studinsertcontroller.php

app/http/controllers/studinsertcontroller.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.
";
      echo 'click here to go back.';
   }
}

步驟4 - 創(chuàng)建名為resources/views/stud_create.php的視圖文件,并在該文件中復(fù)制以下代碼。

resources/views/stud_create.php

    
      <title>student management | add</title>    

   
      <form action="/create" method="post">          <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>" />          <table class="ke-zeroborder">
            <tbody><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>
         </tbody>
</table>
      </form>    

第5步 - 在app/http/routes.php中添加以下行。

app/http/routes.php

route::get('insert','studinsertcontroller@insertform');
route::post('create','studinsertcontroller@insert');

步驟6 - 訪問(wèn)以下url以在數(shù)據(jù)庫(kù)中插入記錄。

http://localhost:8000/insert

步驟7 - 輸出將如下圖所示。

 

查詢記錄

配置數(shù)據(jù)庫(kù)后,我們可以使用select方法使用db facade檢索記錄。select方法的語(yǔ)法如下表所示。

syntax array select(string $query, array $bindings = array())
parameters
  • $query(string) ? query to execute in database
  • $bindings(array) ? values to bind with queries
returns array
description run a select statement against the database.

 

實(shí)例

步驟1 - 執(zhí)行以下命令以創(chuàng)建名為studviewcontroller的控制器。

php artisan make:controller studviewcontroller --plain

第2步 - 成功執(zhí)行第1步后,您將收到以下輸出 -

第3步 - 將以下代碼復(fù)制到文件

app/http/controllers/studviewcontroller.php

app/http/controllers/studviewcontroller.php

 namespace app\http\controllers;

use illuminate\http\request;
use db;
use app\http\requests;
use app\http\controllers\controller;

class studviewcontroller extends controller {
   public function index(){
      $users = db::select('select * from student');
      return view('stud_view',['users'=-->$users]);
   }
}

步驟4 - 創(chuàng)建名為resources / views / stud_view.blade.php的視圖文件,并在該文件中復(fù)制以下代碼。

resources/views/ stud_view.blade.php

    
      <title>view student records</title>    

   
      
         @foreach ($users as $user)
         
         @endforeach
      <table border="1" class="ke-zeroborder">
         <tbody><tr>
            <td>id</td>
            <td>name</td>
         </tr>
<tr>
            <td>{{ $user->id }}</td>
            <td>{{ $user->name }}</td>
         </tr>
</tbody>
</table>
   

第5步 - 在app / http / routes.php中添加以下行。

app/http/routes.php

route::get('view-records','studviewcontroller@index');

步驟6 - 訪問(wèn)以下url以查看數(shù)據(jù)庫(kù)中的記錄。

http://localhost:8000/view-records

步驟7 - 輸出將如下圖所示。

 

更新記錄

我們可以使用更新方法使用db facade更新記錄。update方法的語(yǔ)法如下表所示。

syntax int update(string $query, array $bindings = array())
parameters
  • $query(string) ? query to execute in database
  • $bindings(array) ? values to bind with queries
returns int
description run an update statement against the database.

 

實(shí)例

請(qǐng)注意以下示例以了解有關(guān)更新記錄的更多信息 -

步驟1 - 執(zhí)行以下命令以創(chuàng)建名為studviewcontroller的控制器。

php artisan make:controller studupdatecontroller --plain

第2步 - 成功執(zhí)行后,您將收到以下輸出 -

步驟3 - 將以下代碼復(fù)制到文件app / http / controllers / studupdatecontroller.php

app/http/controllers/studupdatecontroller.php

 namespace app\http\controllers;

use illuminate\http\request;
use db;
use app\http\requests;
use app\http\controllers\controller;

class studupdatecontroller extends controller {
   public function index(){
      $users = db::select('select * from student');
      return view('stud_edit_view',['users'=-->$users]);
   }
   public function show($id) {
      $users = db::select('select * from student where id = ?',[$id]);
      return view('stud_update',['users'=>$users]);
   }
   public function edit(request $request,$id) {
      $name = $request->input('stud_name');
      db::update('update student set name = ? where id = ?',[$name,$id]);
      echo "record updated successfully.
";
      echo 'click here to go back.';
   }
}

第4步 - 創(chuàng)建一個(gè)名為的視圖文件

resources / views / stud_edit_view.blade.php并在該文件中復(fù)制以下代碼。

resources/views/stud_edit_view.blade.php

    
      <title>view student records</title>    

   

      
         @foreach ($users as $user)
         
         @endforeach
      <table border="1" class="ke-zeroborder">
         <tbody><tr>
            <td>id</td>
            <td>name</td>
            <td>edit</td>
         </tr>
<tr>
            <td>{{ $user->id }}</td>
            <td>{{ $user->name }}</td>
            <td>edit</td>
         </tr>
</tbody>
</table>
   

第5步 - 創(chuàng)建另一個(gè)名為的視圖文件

resources / views / stud_update.php并在該文件中復(fù)制以下代碼。

resources/views/stud_update.php

    
      <title>student management | edit</title>    

   
      <form action="/edit/<?php echo $users[0]->id; ?>" method="post">          <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>" />          <table class="ke-zeroborder">
            <tbody><tr>
               <td>name</td>
               <td>
                  <input type="text" name="stud_name" value="<?php echo$users[0]->name; ?>" />                </td>
            </tr>
            <tr>
               <td colspan="2">
                  <input type="submit" value="update student" />                </td>
            </tr>
         </tbody>
</table>
      </form>    

第6步 - 在app / http / routes.php中添加以下行。

app/http/routes.php

route::get('edit-records','studupdatecontroller@index');
route::get('edit/{id}','studupdatecontroller@show');
route::post('edit/{id}','studupdatecontroller@edit');

步驟7 - 訪問(wèn)以下url以更新數(shù)據(jù)庫(kù)中的記錄。

http://localhost:8000/edit-records

步驟8 - 輸出將如下圖所示。

步驟9 - 單擊任何記錄上的編輯鏈接,您將被重定向到可以編輯該特定記錄的頁(yè)面。

步驟10 - 輸出將如下圖所示。

步驟11 - 編輯該記錄后,您將看到如下圖所示的提示。

 

刪除記錄

我們可以使用delete方法使用db facade刪除記錄。delete方法的語(yǔ)法如下表所示。

syntax int delete(string $query, array $bindings = array())
parameters
  • $query(string) ? query to execute in database
  • $bindings(array) ? values to bind with queries
returns int
description run a delete statement against the database.

 

實(shí)例

步驟1 - 執(zhí)行以下命令以創(chuàng)建名為studdeletecontroller的控制器。

php artisan make:controller studdeletecontroller --plain

第2步 - 成功執(zhí)行后,您將收到以下輸出

第3步 - 將以下代碼復(fù)制到文件

app/http/controllers/studdeletecontroller.php

 namespace app\http\controllers;

use illuminate\http\request;
use db;
use app\http\requests;
use app\http\controllers\controller;

class studdeletecontroller extends controller {
   public function index(){
      $users = db::select('select * from student');
      return view('stud_delete_view',['users'=-->$users]);
   }
   public function destroy($id) {
      db::delete('delete from student where id = ?',[$id]);
      echo "record deleted successfully.
";
      echo 'click here to go back.';
   }
}

第4步 - 創(chuàng)建一個(gè)名為的視圖文件

resources / views / stud_delete_view.blade.php并在該文件中復(fù)制以下代碼。

resources/views/stud_delete_view.blade.php

    
      <title>view student records</title>    

   
      
         @foreach ($users as $user)
         
         @endforeach
      <table border="1" class="ke-zeroborder">
         <tbody><tr>
            <td>id</td>
            <td>name</td>
            <td>edit</td>
         </tr>
<tr>
            <td>{{ $user->id }}</td>
            <td>{{ $user->name }}</td>
            <td>delete</td>
         </tr>
</tbody>
</table>
   

第5步 - 在app / http / routes.php中添加以下行。

app/http/routes.php

route::get('delete-records','studdeletecontroller@index');
route::get('delete/{id}','studdeletecontroller@destroy');

步驟6 - 輸出將如下圖所示。

步驟7 - 單擊刪除鏈接以從數(shù)據(jù)庫(kù)中刪除該記錄。您將被重定向到一個(gè)頁(yè)面,您將在該頁(yè)面中看到如下圖所示的消息。

步驟8 - 單擊“單擊此處”鏈接,您將被重定向到一個(gè)頁(yè)面,您將看到除已刪除記錄之外的所有記錄。

下一節(jié):laravel 錯(cuò)誤和日志

laravel 教程

相關(guān)文章