Ejemplo
Código PHP:
Ver original
public function listarAlumnos() { $objMysql = registry::get ( 'mysql' ); $sql = 'SELECT * FROM alumno'; //Armamos el query a realizar $query = $objMysql->prepare ( $sql ); //Preparando el query $query->execute (); //Ejecutamos el query $arrAlumnos = $query->fetchAll (); //Recogemos los resultados, esto retorna un arreglo include_once (_path . 'app/model/dto/alumno.dto.php'); //Cargamos nuestra clase AlumnoDTO foreach ( $arrAlumnos as $alumno ) { $alumnoDTO = new AlumnoDTO (); $alumnoDTO->setIdAlumno($alumno['idAlumno']); $alumnoDTO->setNombre($alumno['nombre']); $alumnoDTO->setApellidoPaterno($alumno['apellidoPaterno']); $alumnoDTO->setApellidoMaterno($alumno['apellidoMaterno']); $alumnoDTO->setCreditos($alumno['creditos']); $alumnoDTO->setFecha_nac($alumno['fecha_nac']); $objAlumno[] = $alumnoDTO; } array_debug($query->errorInfo()); if($query->rowCount() > 0) return $objAlumno; else return false; }
Justamente, si se pusiera SELECTT, con doble T quisiera imprimir el error de sintaxis, obviamente ese error no llegaria a pasar pero quiero hacerlo ocmo prueba no mas, supongamos que hacemos esto
SELECT * FROM alumno where idAlumno = '$idAlumno', esa variable idAlumno nunca llego ahi si evotaria error pero el PDO no me imprime el mensaje de error de sintaxis, tengo que usar $query->errorInfo() guardarlo e imprimir el indice 2, quiero hacerlo con try catch nada mas
Salu2