Mysql
 sql >> Database >  >> RDS >> Mysql

Gestione degli errori MySQL quando si utilizza Ajax

Sposterei tutta la tua logica di errore da jQuery a PHP. Puoi rispondere con un semplice oggetto JSON che può contenere lo status (successo o errore), code (se necessario), message e persino data , se vuoi fornire risultati specifici.

Ad esempio, fai una richiesta come questa:

$.ajax({
  type: 'POST',
  url: url,
  data: $("#frmSurvey").serialize(),
  success: function(result){
    var json = $.parseJSON(result);
    if(json.response.status == 'success') {
      // do something
    } else {
      // look at message or code to perform specific actions
    }
  }
});

Quindi nel file PHP che elabora questa richiesta, costruisci un array con tutti gli elementi sopra menzionati di cui hai bisogno (stato, codice, messaggio, ecc.). Alla fine, echo qualcosa del genere:

$result = array(
  'response' => array(
    'status' => 'error',
    'code' => '1', // whatever you want
    'message' => 'Could not connect to the database.'
  )
);    

echo json_encode($result);

Il $result array conterrà i dati rilevanti in base ai controlli effettuati in PHP.

Spero che questo aiuti!