首頁  >  問答  >  主體

如何在 Laravel 中建立按鈕點擊計數器

我是 Laravel 新手。目前,我正在嘗試建立一個按鈕,當按一下該按鈕時,會在名稱或 $_POST 值中新增一個值。

在普通 PHP 中,我可以使用 $_SESSIONs 來做到這一點:

session_start();

// if counter is not set, set to zero
if(!isset($_SESSION['counter'])) {
    $_SESSION['counter'] = 0;
}

// if button is pressed, increment counter
if(isset($_POST['button'])) {
      $_SESSION['counter'];
}

// reset counter
if(isset($_POST['reset'])) {
    $_SESSION['counter'] = 0;
}

?>

<form method="POST">
    <input type="hidden" name="counter" value="<?php echo $_SESSION['counter']; ?>" />
    <input type="submit" name="button" value="Counter" />
    <input type="submit" name="reset" value="Reset" />
    <br/><?php echo $_SESSION['counter']; ?>
</form>

但是,我不知道如何在 Lavel 中執行此操作。有沒有關於如何做這樣的事情的文檔?

P粉226413256P粉226413256209 天前369

全部回覆(1)我來回復

  • P粉041881924

    P粉0418819242024-02-27 00:43:29

    使用 Laravel 有很多方法可以做到這一點。其中之一如下:

    發送 (GET/POST)當使用者點擊所需按鈕時發出請求。

    您可以透過 request() 輔助函數取得發送的任何內容,因此在一個簡單的控制器中我們可以擁有:

    request()->session()->increment('count');
    

    不需要使用 request() 方法,會話可以透過 session() 輔助函數(或 Session Facade)直接存取。

    此外,在簡單的 blade.php 頁面上顯示結果可能如下所示:

    @if(Session::has('count'))
    <span>
      {{ Session::get('count')}}
    </span>
    @endif
    

    您可以在 遞增和遞減會話值

    回覆
    0
  • 取消回覆