Hola amigo, muy buena tu api me ha servido pero tiene un detalle en el archivo CedulaVe.php con las Cedulas que no están registradas en el CNE retorna un Array incompleto y manda undefined array key para los campos :
'name' => $fullname['name'], 'lastname' => $fullname['lastname'], 'fullname' => $content[2], 'state' => $content[3], 'municipality' => $content[4], 'parish' => $content[5], 'voting' => $content[6], 'address' => $content[7],
Debido al mensaje de error del cne no crea los indices y los valores correspondientes. eh solucionado este error agregando otra condicion cuando el valor de content['error'] es false. Solo tenias cuando es True que es cuando la cédula no existe, pero este caso la cédula existe mas no está registrada en el CNE. adjunto código antes de la validación y depues Creando los campos con null o vacio.
Código sin la validación
`if (self::existData($content['message'])) {// Data not found
$content = self::processAndCleanData($content['message']);
$fullname = self::formatterName($content[2]);
$response = [
'status' => 200,
'version' => self::$version,
'api' => self::$api,
'data' => [
'nac' => $nac,
'dni' => $cedula,
'name' => $fullname['name'],
'lastname' => $fullname['lastname'],
'fullname' => $content[2],
'state' => $content[3],
'municipality' => $content[4],
'parish' => $content[5],
'voting' => $content[6],
'address' => $content[7],
],
]; // end response
} else { // Data not found
return self::errors(4, $json, $pretty);
} // endif`
Codigo con la nueva Validación
`if (self::existData($content['message'])) {// Data not found
if (!$content['error']) {
# code...
echo $content['message'];
$response = [
'status' => 200,
'version' => self::$version,
'api' => self::$api,
'data' => [
'nac' => $nac,
'dni' => $cedula,
'name' => NULL,
'lastname' => NULL,
'fullname' => NULL,
'state' => NULL,
'municipality' => NULL,
'parish' => NULL,
'voting' => NULL,
'address' => NULL,
],
]; // end response
}else {
# code...
$content = self::processAndCleanData($content['message']);
$fullname = self::formatterName($content[2]);
$response = [
'status' => 200,
'version' => self::$version,
'api' => self::$api,
'data' => [
'nac' => $nac,
'dni' => $cedula,
'name' => $fullname['name'],
'lastname' => $fullname['lastname'],
'fullname' => $content[2],
'state' => $content[3],
'municipality' => $content[4],
'parish' => $content[5],
'voting' => $content[6],
'address' => $content[7],
],
]; // end response
}
} else { // Data not found
return self::errors(4, $json, $pretty);
} // endif`
habria que ver como saltar o que muestre error tmb de no registrado. por ahora vi que era eso
Hola amigo, muy buena tu api me ha servido pero tiene un detalle en el archivo CedulaVe.php con las Cedulas que no están registradas en el CNE retorna un Array incompleto y manda undefined array key para los campos :
'name' => $fullname['name'], 'lastname' => $fullname['lastname'], 'fullname' => $content[2], 'state' => $content[3], 'municipality' => $content[4], 'parish' => $content[5], 'voting' => $content[6], 'address' => $content[7],Debido al mensaje de error del cne no crea los indices y los valores correspondientes. eh solucionado este error agregando otra condicion cuando el valor de content['error'] es false. Solo tenias cuando es True que es cuando la cédula no existe, pero este caso la cédula existe mas no está registrada en el CNE. adjunto código antes de la validación y depues Creando los campos con null o vacio.
Código sin la validación
`if (self::existData($content['message'])) {// Data not found
Codigo con la nueva Validación
`if (self::existData($content['message'])) {// Data not found
habria que ver como saltar o que muestre error tmb de no registrado. por ahora vi que era eso