-1

I have this form in Laravel:

<form method="post">
    {{csrf_field()}}

    <button type="submit" value="happy" id="happy" name="reaction" class="border-0 btn-submit">
        <img src="/assets/images/reactions/happy.png" />
    </button>

    <button type="submit" value="angry" id="angry" name="reaction" class="border-0 btn-submit">
        <img src="/assets/images/reactions/angry.png" />
    </button>
    <button type="submit" value="ill" id="ill" name="reaction" class="border-0 btn-submit">
        <img src="/assets/images/reactions/ill.png" />
    </button>
    <button type="submit" value="love" id="love" class="border-0 btn-submit">
        <img src="/assets/images/reactions/in-love.png" />
    </button>
    <button type="submit" value="quiet" id="quiet" class="border-0 btn-submit">
        <img src="/assets/images/reactions/quiet.png" />
    </button>
    <button type="submit" value="sad" id="sad" class="border-0 btn-submit">
        <img src="/assets/images/reactions/sad.png" />
    </button>
    <!-- <input type="text" name="studentName" id="studentName" class="form-control" placeholder="please type in your name"> -->

    <input type="hidden" value="{{$article->id}}" id="post_id">
    <input type="hidden" name="_token" value="{{csrf_token()}}">
</form>

After I'm in controller get all data from post is not working:

$request->request->all(); //Get all post requests


switch ($request->request->input('reaction')) {
    case 'happy':
        return response()->json(['success' => "happy"]);
        break;

    case 'angry':
        return response()->json(['success' => "angry"]);
        break;

    case 'ill':
        return response()->json(['success' => "ill"]);
        break;
}

I'm trying these codes one by one but it does not give me results, ot only gives me one result:

return $request->all(); 
$request->request->get('my_param'); 
$request->request->post('my_param'); 
$request->request->input('my_param');

But NO working! And I'm tired for try to get button value or input value.

bad_coder
  • 11,289
  • 20
  • 44
  • 72
Farshid
  • 11
  • 5

1 Answers1

0

I believe what you look for is

$request->all() and not $request->request->all()

The key of value will also be what you specify in the name attribute on the element, whilst value will be the value.

    <button type="submit" value="happy" id="happy" name="reaction" class="border-0 btn-submit">
        <img src="/assets/images/reactions/happy.png" />
    </button>


var_dump($request->all());

array() [
  'reaction' => 'happy'
]
PatricNox
  • 3,306
  • 1
  • 17
  • 25