Atrapar error al insertar registro con PHP

Intento atrapar el error al insertar un registro y no logre que me de resultado.
Si alguno puede indicarme que esta mal, desde ya, muy agradecido !
El código es:

try {
$result=odbc_exec($link,$wcmd);
if($result){
print("La Carta de Porte fue Grabada Correctamente.\n");
}
else{
throw new RuntimeException("Falla al Grabar.");
}
}
catch (RuntimeException $e) {
print("Error al Grabar el Registro:\n");
print(" Estado: ".odbc_error($link)."\n");
print(" Error: ".odbc_errormsg($link)."\n");
}
y el resultado que tengo es :
Warning: odbc_exec() [function.odbc-exec]: SQL error:
[Microsoft][ODBC SQL Server Driver][SQL Server]La Cosecha no es Valida.,
SQL state 37000 in SQLExecDirect in
C:\xampp\htdocs\Acopio\procesaalta_cp.php on line 152
Error al Grabar el Registro: Estado: 37000 Error: [Microsoft][ODBC SQL Server Driver][SQL Server]La Cosecha no es Valida.

Respuesta
1

Lo de "la cosecha no es válida" me encanta, habrá que devolver el grano al campesino xDD

Cambia un poco el catch, estas intentando capturar una RuntimeException, si el error no es de esa clase no va a funcionar, intenta con la clase común Exception:

} catch (Exception $e) {
echo 'Excepción capturada: ', $e->getMessage(), "\n";
}

Puedes o añadir este nuevo catch a continuación o sustituir el que tienes.

Si funciona, luego puedes añadir el código para ver el error que lanza la DB.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas