PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 27-11-2015 18:52:22

deuxk
Membre
Inscription : 27-11-2015
Messages : 2

Php / Ajax gestion des erreurs Try/Catch ou non?

Bonjour,

J'aimerais savoir votre avis sur la meilleur méthode a utilisé pour les envoies de formulaire en ajax avec retour d'erreur. J'ai fais le tour de la question et je suis toujours en interrogation...

Sur mon site, j'ai plusieurs formulaires ressemblant a celui ci :


<form id="forgotPwd" method="get" onSubmit="return false;">
      <fieldset class="plain">
       <legend><span>Changer votre mot de passe</span></legend>
        <div class="row">
          <label for="email" class="required">Votre courriel*</label>
          <input type="text" name="email" id="email" placeholder="exemple@site.com" />
        </div><br>        <div><br>            <input type="submit" value="Envoyer" />
        </div> <br>      </fieldset>
</form>
 

Avec du jquery comme suit :


<script type="text/javascript">
$(function() {
 
    $('form#forgotPwd').on('submit',function(e) {
        var d = $(this).serialize();
         
        $.ajax({
          url: "modules/users/handles/forgotPwd.php",
          dataType: 'json',
          type: "GET",
          data: d,
          success: function(data, status, xhr) {
              if(data.error) {
                  alert(data.error.message);
                 
              } else {
                  alert('Success message');              
              }
               
          },
          error: function (request, status, error) {
                alert(request.responseText);
          }
           
        });
     
    });
});
</script>
 

Je m'interroge a savoir pour le coté PHP, qu'elle serait la meilleur méthode a utilisé? Voici les 2 façons et dites moi vous, vous feriez quoi?

Version 1


header('Content-Type: application/json');
 
try {
     
    if(isset($_GET['email']) && !empty($_GET['email'])) {
        if( filter_var($_GET['email'], FILTER_VALIDATE_EMAIL) ) {
 
           echo json_encode(array('results' => 'ok'));
             
        } else throw new Exception('Address courriel invalide',2);
    } else throw new Exception('Address courriel vide',1);
     
} catch(Exception $e) {
     
    echo json_encode(array('error' => array('message'    => $e->getMessage(),
                            'code'      => $e->getCode() ) ));
 
}
 

Version 2:


public function throwJsonException($msg,$code) {
    echo json_encode(array('error'=> array('code'     => $code,
                           'message'  => $msg ));
}
 
if(isset($_GET['email']) && !empty($_GET['email'])) {
    if( filter_var($_GET['email'], FILTER_VALIDATE_EMAIL) ) {
     
        echo json_encode(array('results' => 'ok'));
         
    } else throwJsonException('Address courriel invalide',2);
} else throwJsonException('Address courriel vide',1);
 

Merci de vos avis, vos suggestions.

Hors ligne

#2 27-11-2015 19:57:34

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 626
Site Web

Re : Php / Ajax gestion des erreurs Try/Catch ou non?

Bonsoir,

Plutôt la première en uniformisant la gestion de vos erreurs dans votre application. Au niveau de Js, prise en compte des erreurs réseaux+erreurs applicatives.

++


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#3 27-11-2015 20:06:29

deuxk
Membre
Inscription : 27-11-2015
Messages : 2

Re : Php / Ajax gestion des erreurs Try/Catch ou non?

Premierement merci pour la réponse...

Parcontre, je ne vois pas ce que vous voulez dire par l'uniformisation de la gestion des erreurs. Est-ce que vous pourriez me donne plus d'explication sur cela svp.

Aussi la version 1 ne sera pas plus dure coté CPU et Mémoire?

merci

Hors ligne

#4 28-11-2015 11:23:40

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 626
Site Web

Re : Php / Ajax gestion des erreurs Try/Catch ou non?

Bonjour,

Il faut idéalement standardiser le format de vos erreurs applicatives, s'y tenir et centraliser cette gestion d'erreur.
Pour le côté CPU et mémoire : non.

++


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#5 30-11-2015 13:11:58

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 193

Re : Php / Ajax gestion des erreurs Try/Catch ou non?

mouais, mais ca ressemble un peu a du code au km !!!!

moi, ma gestion de formulaire (toujours en ajax est centralisée, submit comme controle).
si ça intéresse qq1 je pose wink

a++

Hors ligne

#6 01-12-2015 11:38:31

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 626
Site Web

Re : Php / Ajax gestion des erreurs Try/Catch ou non?

Salut pierrot

Standardiser n'a jamais été synonyme de code au kilomètre.
Exemple : Standardisation controleur Ajax et architecture code.

Mais sinon vas-y fais-toi plaisir et pose ton truc qu'on regarde ça wink

++


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#7 05-12-2015 01:14:32

Pierrot
Ancien nouveau
Inscription : 08-05-2009
Messages : 1 193

Re : Php / Ajax gestion des erreurs Try/Catch ou non?

non jc, je ne poserai rien parce que nous ne parlons pas de la même chose wink
je n'ai aucunement parler de standardisation wink
je t'ai parler de code au km wink
moi, je parle de centraliser mon code.

par exemple si j'ai 2000 champs a traiter dans un soft, je je ferai jamais :
if($nomchamp1==""){traitmenAFaire();};
if($nomchamp11000==""){traitmenAFaire();};
if($nomchamp1256==""){traitmenAFaire();};
if($nomchamp1xxx==""){traitmenAFaire();};
if($nomchamp1xxx==""){traitmenAFaire();};
if($nomchampxxx1==""){traitmenAFaire();};
if($nomchampxxx1==""){traitmenAFaire();};
if($nomchamp1xxx==""){traitmenAFaire();};
if($nomchamp1xxx==""){traitmenAFaire();};

sinon, je ne us pas un développeur, je uis sténo dactylo wink

mais si on parle de la même chose, j'veux bien poser qqchose wink
a++

Hors ligne

Pied de page des forums