Maison  >  Questions et réponses  >  le corps du texte

Comment créer un compteur de clics sur un bouton dans Laravel

Je suis nouveau sur Laravel. Actuellement, j'essaie de créer un bouton qui, lorsqu'on clique dessus, ajoute une valeur au nom ou à la valeur $_POST.

En PHP simple, je peux le faire en utilisant $_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>

Cependant, je ne sais pas comment faire ça à Lavel. Existe-t-il une documentation sur la façon de faire quelque chose comme ça ?

P粉226413256P粉226413256259 Il y a quelques jours415

répondre à tous(1)je répondrai

  • P粉041881924

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

    Il existe de nombreuses façons de procéder en utilisant Laravel. L'un d'eux est le suivant :

    Les demandes d'envoi (

    GET/POST) sont effectuées lorsque l'utilisateur clique sur le bouton souhaité.

    Vous pouvez obtenir tout ce qui est envoyé via la fonction d'assistance

    , donc dans un simple contrôleur nous pouvons avoir : request()

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

    Il n'est pas nécessaire d'utiliser la méthode

    , la session est accessible directement via la fonction d'assistance session() (ou Session Facade). request() 方法,会话可以通过 session() < /p>De plus, l'affichage des résultats sur une simple page

    pourrait ressembler à ceci : blade.php

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

    Vous pouvez augmenter et décrémenter la valeur de la session

    en .

    répondre
    0
  • Annulerrépondre