Как правильно размещать данные в том же представлении в Laravel 5.2

У меня возникли проблемы с тем, чтобы оператор if в этом представлении Laravel работал.

<h1>Login View</h1>

<form action="{{ route('type_of_user') }}"  method="post">
  <select name="type_of_user">
  <option value="Volunteer">Volunteer</option>
  <option value="Organization" selected>Organization</option>
   <br><br>
  <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
  <input type="submit">
</select>
</form>


{{ $value }}
    <?php 
    if ($value = "Volunteer") {
        echo "I am a Volunteer";
    }
    else {
        echo "I am a Organization";
    }

«{{ $value }}» выводит правильный тип пользователя, когда он изменяется и отправляется из формы. но вывод оператора if работает неправильно. Когда выбран волонтер, результат будет следующим:

Волонтер Я волонтер

но когда я выбираю организацию, вывод:

Организация Я волонтер.

Сначала я устал использовать команду @if в лезвии и получил ту же ошибку. Я переключился на PHP, чтобы посмотреть, может ли проблема заключаться в моей команде лезвия, но получил ту же проблему, что и с php. Единственное, о чем я могу думать, это то, что, возможно, я вызываю ошибку, отправляя на ту же страницу.

Мой контроллер для этого кода:

class Usercontroller extends Controller
{
    public function Type_of_user(Request $request)
    {
        $value = $request['type_of_user'];


        return view('/login')->with('value', $value);
    } 
}

Приветствуются любые советы о том, как заставить оператор «если» правильно работать с тем, что выбрано.


person Alfred Garrett    schedule 16.03.2016    source источник


Ответы (1)


Вы не сравниваете, а присваиваете. Используйте двойной знак =.
($value == "Volunteer")

person Mark E    schedule 16.03.2016
comment
Я мог бы поклясться, что пробовал это прошлой ночью. Теперь он отлично работает. Спасибо за вашу помощь! - person Alfred Garrett; 16.03.2016