Afficher les Messages d'Erreur dans Laravel après avoir été Redirigé à partir du contrôleur.
Comment puis-je afficher le message de validation de la vue qui est redirigé dans Laravel ?
Voici ma fonction dans un Contrôleur
public function registeruser()
{
$firstname = Input::get('firstname');
$lastname = Input::get('lastname');
$data = Input::except(array('_token')) ;
$rule = array(
'firstname' => 'required',
'lastname' => 'required',
) ;
$validator = Validator::make($data,$rule);
if ($validator->fails())
{
$messages = $validator->messages();
return Redirect::to('/')->with('message', 'Register Failed');
}
else
{
DB::insert('insert into user (firstname, lastname) values (?, ?)',
array($firstname, $lastname));
return Redirect::to('/')->with('message', 'Register Success');
}
}
Je sais que le code donné ci-dessous est une mauvaise série, Mais comment puis-je résoudre ce problème et qu'est ce que
Je manque
@if($errors->has())
@foreach ($errors->all() as $error)
<div>{{ $error }}</div>
@endforeach
@endif
Mise à jour : Et comment puis-je afficher les messages d'erreur à proximité de les domaines particuliers
Vous devez retourner les messages d'erreur, quelque chose comme
Merci, ça m'a aidé
Comment vous repliée la valeur tapée dans le champ après la validation de redirection ?
return Redirect::to('/')->withErrors($validator);
Merci, ça m'a aidé
Comment vous repliée la valeur tapée dans le champ après la validation de redirection ?
OriginalL'auteur SA__ | 2014-11-04
Vous devez vous connecter pour publier un commentaire.
Si la validation échoue, de retour avec les erreurs de validation.
Vous pouvez intercepter l'erreur sur votre point de vue à l'aide de
Mise à JOUR
Pour afficher l'erreur dans chaque champ, vous pouvez faire comme ceci.
Pour un meilleur affichage de style avec css.
Vous pouvez vous référer à la documentation ici.
<input type="text" name="firstname" value="{{ old('firstname') }}">
ou utiliser le formulaire helper, il sera automatiquement la valeur après une erreur de validation.Notez que
$errors->first('firstname')
affiche uniquement le premier message pour le champ donné. Vous pouvez avoir plusieurs erreurs; obtenir comme un tableau pour faire une boucle comme ceci:$errors->get('firstname')
OriginalL'auteur Sushant Aryal
Veuillez fournir des détails supplémentaires dans votre réponse à des résumés de ce que votre code ne.
OriginalL'auteur Nicola Lamonaca
Si vous voulez charger la vue depuis le même contrôleur que vous êtes sur:
Et si vous voulez afficher rapidement toutes les erreurs, mais un peu plus de contrôle:
OriginalL'auteur Andrew
Déplacer tout ce qui en kernel.php si la méthode ci-dessus ne fonctionne pas pour vous
rappelez-vous que vous avez à déplacer toutes ces lignes kernel.php en plus de la solution ci-dessus
permettez-moi tout d'abord afficher la façon dont elle est là dans le fichier déjà..
maintenant ce que vous avez à faire est de
c'est à dire;
OriginalL'auteur Mayank