Foros del Web » Programando para Internet » PHP »

Laravel: comparar dos campos de un formulario

Estas en el tema de Laravel: comparar dos campos de un formulario en el foro de PHP en Foros del Web. Hola. Estoy buscando documentación para poder validar dos campos de un formulario en Laravel 8. La aplicación permite crear partidos entre equipos registrados en una ...
  #1 (permalink)  
Antiguo 21/10/2021, 08:46
 
Fecha de Ingreso: octubre-2007
Mensajes: 91
Antigüedad: 16 años, 5 meses
Puntos: 1
Laravel: comparar dos campos de un formulario

Hola.

Estoy buscando documentación para poder validar dos campos de un formulario en Laravel 8. La aplicación permite crear partidos entre equipos registrados en una tabla de base de datos, mediante el método create() del controlador

He buscado en validación, inclusive métodos de validación personalizada, pero ni una pista sobre cómo validar dos campos entre sí del mismo formulario

Código PHP:
   public function store(Request  $request){
        
$validatedData $request->validate([
            
'local_team' => 'required'
            
'local_score' => 'required|numeric',
            
'visitor_team' => 'required',
            
'visitor_score' => 'required|numeric',

        ]);

        
$score = new Score();
        
$score -> local_team $request -> local_team;
        
$score -> local_score $request -> local_score;
        
$score -> visitor_team $request -> visitor_team;
        
$score -> visitor_score $request -> visitor_score;
        
$score -> save();
            
$new true;

            return 
redirect()->route('scores.show',['id'=>$score->id 'new'=> true ]);
    } 
En mi caso, los campos 'local_team' y visitor_team' deberían ser diferentes.

¿Alguna pista de cómo hacerlo?

Gracias
  #2 (permalink)  
Antiguo 23/12/2021, 09:47
 
Fecha de Ingreso: enero-2015
Mensajes: 205
Antigüedad: 9 años, 2 meses
Puntos: 18
Respuesta: Laravel: comparar dos campos de un formulario

supongo que quieres hacer algo así,

Puedes utilizar el hook after para después de esa validación realice otra.

sería algo así. despues de tu validación


Código PHP:
Ver original
  1. $validatedData->after(function($validatedData) {
  2.     if ($this->somethingElseIsInvalid()) {
  3.         $validatedData->errors()->add('field', 'Something is wrong with this field!');
  4.     }
  5. });
  6.  
  7. if ($validatedData->fails()) {
  8.     //
  9. }
saludos
  #3 (permalink)  
Antiguo 23/12/2021, 09:50
 
Fecha de Ingreso: enero-2015
Mensajes: 205
Antigüedad: 9 años, 2 meses
Puntos: 18
Respuesta: Laravel: comparar dos campos de un formulario

te dejo el link a la docu, pon la versión de laravel que utilices
https://laravel.com/docs/8.x/validation

Etiquetas: campos, formulario, laravel, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:46.