jugador
tengo la siguiente url
http://project.su/?invitee=95
primero quiero comprobar el invitee
en url, si la url tiene invitee
luego obtener el valor.
Lo que he probado (controlador):
if(!empty($request->get('invitee'))){
$user->invitee = $request->get('invitee');
}
El siguiente código no funciona.
quiero guardar el invitee
resultado (id) en la base de datos.
Gracias.
Depzor
Para determinar si un valor de entrada está presente:
if ($request->has('invitee')) {
$user->invitee = $request->input('invitee');
}
El tiene El método devuelve verdadero si el valor está presente y no es una cadena vacía:
-
Esto solo funciona para los parámetros de URL, no para la cadena de consulta.
– la caída
3 de agosto de 2016 a las 7:31
-
Estoy completamente en desacuerdo @TheFallen
– Depzor
3 de agosto de 2016 a las 7:33
-
Este método funciona para mí en la cadena de consulta. Por cierto, gracias @Depzor 🙂
– Yusril Herlian Syah
29 de agosto de 2017 a las 8:10
-
Este método también funcionó para mí en la cadena de consulta LARAVEL 8
–Diego Lope Loyola
7 mayo 2022 a las 15:44
-
este método funciona perfecto para la cadena de consulta, gracias @Depzor
–Mohsin Khan
15 de agosto de 2022 a las 11:59
Vikram Bhaskarán
En lo que respecta a Laravel 5.7, la forma preferida de recuperar los parámetros de consulta es
if( $request->has('invitee') ) {
$request->query('invitee');
}
o usando la función auxiliar si no tiene acceso a $request
request()->query('invitee');
-
documentos actuales: laravel.com/docs/7.x/requests#retrieving-input
– Connor Sanguijuela
10 de junio de 2020 a las 20:56
-
La mejor respuesta ya que es la más actual. Gracias.
– GTS Joe
15 de agosto de 2020 a las 14:07
En laravel 5.7, también podemos usar request()->invitee
. Al usar esto, podemos obtener tanto parámetros de ruta de URL como parámetros de consulta. Digamos que tenemos debajo de la URL
http://localhost:8000/users/{id}?invitee=95
Leer id
y invitee
nosotros podemos usar
$id ✔
$invitee ✖ - Invalid
request()->id ✔
request()->invitee ✔
Puede obtener información mediante:
$invitee = Input::get('invitee');
Para más de 5.*
$invitee = $request->input('invitee');
O
$invitee = Request::input('invitee');
para comprobar si invitee
el parámetro existe:
if($request->has('invitee')) {
// ...
}
Para obtener el valor de invitee
:
$invitee = $request->input('invitee');
Alex
Estás llamando $user->save()
¿en cualquier lugar? Deberías llamar $user->save()
para persistir realmente los datos.
Siempre puedes consultar llamando dd($user);
justo después de la segunda línea en su ejemplo, si le preocupa que no esté configurado correctamente, de esta manera puede ver qué atributos están configurados en el $user
objeto.
También puedes reemplazar !empty($request->get('invitee'))
con $request->has('invitee')
.
Deberías usar
$_GET['invitee']
porque esta es una cadena de consulta que no forma parte del enrutamiento de Laravel.– la caída
3 de agosto de 2016 a las 7:32