Laravel 5

[Erreur] Message d'erreur sql generer automatiquement par laravel

  • Avatar de EricArisanjy
    Membre depuis :
    18/01/2019
    Messages :
    1

    Bonjour à tous, j'ai un problème et j'ai besoin de votre aide

    actuellement, je fais un site web en utilisant laravel 5.7. J'aimérais faire une message personnaliser sur le message d'erreur generer automatiquement par laravel mais je n'y arrive pas. J'ai un table et une colonne qui est UNIQUE. Quand je saisie un donné sur le formulaire, en validant cela, une message d'erreur

    SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '65643' for key 'agencyphoneunique' (SQL: insert into agency (name, address, number, city, tps, tvq, postalcode, province, country, descriptionfr, descriptionen, phone, email, logo, updatedat, createdat) values (fbgsdfg, dsgds, , ds, , , 46354, Colombie-Britannique, Canada, wxcW, , 65643, jay@gamail.com, 2019-01-17-17-05-18-Penguins.jpg, 2019-01-17 17:05:18, 2019-01-17 17:05:18))

    affiche si le donnée inserer est deja inserer dans le BD, j'aimerais personnaliser cette message par exemple comme "Cet Numero a dejà été utilisé" par exemple mais pas cette gigantesque message.

    Qui pourras m'aider? Merci d'avance pour votre aide

    Eric

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    2397

    Bonjour,

    Laravel récupère toutes les exceptions dans App\Exceptions\Handler. Il faut voir quelle est l'erreur exacte qui est renvoyée :

    public function report(Exception $exception)
    {
    dd($exception);
    ...
    }

    Et ensuite l'intercepter :

    public function report(Exception $exception)
    {
    if ($exception instanceof MonException) {
    // Là je fais ce que je veux...
    }
    parent::report($exception);
    }

Vous ne pouvez pas répondre à ce sujet.