Ticket #553 -> Repaso del proceso de importación de candidatos desde fichero CSV.

git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_Intranet/trunk/src@24 e2b1556b-49f8-d141-9351-52d6861a72d9
This commit is contained in:
David Arranz 2011-04-06 18:00:22 +00:00
parent 57078592af
commit 5876de9d84
5 changed files with 955 additions and 37254 deletions

View File

@ -21,6 +21,7 @@ echo '<input type="submit" class="button" value="Importar">';
echo '</form>';
echo "<h2>".$locale["1542"]."</h2>";
echo "Formato: nombre;apellidos;e-mail;tlf móvil<br/>";
echo '<form action="importa_candidatos_cvs.php" enctype="multipart/form-data" method="POST">';
echo '<input name="userfile" type="file"><br>';
echo '<input type="submit" class="button" value="Importar">';

View File

@ -693,48 +693,50 @@ function stripinput($text) {
return $text;*/
}
//function menu_candidatos($oid, $pagina, $tabla_cond, $condicion){
// $tabla = "usuarios";
// include LOCALE.LOCALESET."lenguaje.php";
// echo '<table width="100%" class="encabezado"><tr>';
// if(!strpos($pagina, "?")) $pagina .= '.php?liberar=si';
// echo '<td class="sinborde"><form action="'.$pagina.'" method=POST>';
// echo '<input type=hidden name=tabla_lib value="'.$tabla.'">';
// echo '<input type=hidden name=tabla value="'.$tabla_cond.'">';
// echo '<input type=hidden name=oid value="'.$oid.'">';
// echo '<input type="hidden" name="condicion" value="'.$condicion.'">';
// echo '<input type="image" name="eliminar" src="css/flecha_menos.gif">';
// echo '</form></td>';
// if(comprobar_permisos("LC"))
// echo "<td class=sinborde>
// <form action='lista.php?liberar=si' method='POST'>
// <input type=hidden name=tabla_lib value=$tabla>
// <input type=hidden name=oid value=$oid>
// <input type=submit value='".$locale['801']."' class=button>
// </form></td>";
// if(comprobar_permisos("AC"))
// echo "<td class=sinborde>
// <form action='candidatos.php?liberar=si' method='POST'>
// <input type=hidden name=tabla_lib value=$tabla>
// <input type=hidden name=oid value=$oid>
// <input type=submit value='".$locale['802']."' class=button>
// </form></td>";
// if(comprobar_permisos("SP"))
// echo "<td class=sinborde>
// <form action='formulario_importa_candidato.php?liberar=si' method='POST'>
// <input type=hidden name=tabla_lib value=$tabla>
// <input type=hidden name=oid value=$oid>
// <input type=submit value='".$locale['815']."' class=button>
// </form></td>";
// if(comprobar_permisos("LC"))
// echo "<td class=sinborde>
// <form action='buscar.php?liberar=si' method='POST'>
// <input type=hidden name=tabla_lib value=$tabla>
// <input type=hidden name=oid value=$oid>
// <input type=submit value='".$locale['816']."' class=button>
// </form></td>";
// echo '</tr></table>';
//}
/*
function menu_candidatos($oid, $pagina, $tabla_cond, $condicion){
$tabla = "usuarios";
include LOCALE.LOCALESET."lenguaje.php";
echo '<table width="100%" class="encabezado"><tr>';
if(!strpos($pagina, "?")) $pagina .= '.php?liberar=si';
echo '<td class="sinborde"><form action="'.$pagina.'" method=POST>';
echo '<input type=hidden name=tabla_lib value="'.$tabla.'">';
echo '<input type=hidden name=tabla value="'.$tabla_cond.'">';
echo '<input type=hidden name=oid value="'.$oid.'">';
echo '<input type="hidden" name="condicion" value="'.$condicion.'">';
echo '<input type="image" name="eliminar" src="css/flecha_menos.gif">';
echo '</form></td>';
if(comprobar_permisos("LC"))
echo "<td class=sinborde>
<form action='lista.php?liberar=si' method='POST'>
<input type=hidden name=tabla_lib value=$tabla>
<input type=hidden name=oid value=$oid>
<input type=submit value='".$locale['801']."' class=button>
</form></td>";
if(comprobar_permisos("AC"))
echo "<td class=sinborde>
<form action='candidatos.php?liberar=si' method='POST'>
<input type=hidden name=tabla_lib value=$tabla>
<input type=hidden name=oid value=$oid>
<input type=submit value='".$locale['802']."' class=button>
</form></td>";
if(comprobar_permisos("SP"))
echo "<td class=sinborde>
<form action='formulario_importa_candidato.php?liberar=si' method='POST'>
<input type=hidden name=tabla_lib value=$tabla>
<input type=hidden name=oid value=$oid>
<input type=submit value='".$locale['815']."' class=button>
</form></td>";
if(comprobar_permisos("LC"))
echo "<td class=sinborde>
<form action='buscar.php?liberar=si' method='POST'>
<input type=hidden name=tabla_lib value=$tabla>
<input type=hidden name=oid value=$oid>
<input type=submit value='".$locale['816']."' class=button>
</form></td>";
echo '</tr></table>';
}
*/
//function menu_usuarios($oid){
// $tabla = "usuarios";

View File

@ -60,68 +60,77 @@ function verificar_dato($dato){
//Comprueba si existe alguien por un dni, nombre y apellidos y email
function existe($dni, $nombre, $apellidos, $email, $oid){
$existe = array();
$link = conectar();
/** EXISTENCIA DE DNI **/
//Si hay letra en la posición 7 es porque el DNI empezaba por cero y se le ha quitado
if(!es_numerico($dni[7])){
$letra = $dni[7];
$cont=8;
while(!verificar_letra($letra) && $cont < 11){
$letra = $dni[$cont];
$cont++;
if (isset($dni)) {
if (!es_numerico($dni[7])) {
$letra = $dni[7];
$cont=8;
while(!verificar_letra($letra) && $cont < 11){
$letra = $dni[$cont];
$cont++;
}
$nums = "0".substr($dni, 0, 7);
}else{
$letra = $dni[8];
$cont=9;
while(!verificar_letra($letra) && $cont < 12){
$letra = $dni[$cont];
$cont++;
}
$nums = substr($dni, 0, 8);
}
$nums = "0".substr($dni, 0, 7);
}else{
$letra = $dni[8];
$cont=9;
while(!verificar_letra($letra) && $cont < 12){
$letra = $dni[$cont];
$cont++;
$letra = strtoupper($letra);
$dni = $nums.$letra;
$resultado = mysql_query("select dni from usuarios where oid <> '$oid' and dni='$dni'",$link);
$num = mysql_num_rows($resultado);
if($num > 0){
$existe[0] = 1;
}
$nums = substr($dni, 0, 8);
}
$letra = strtoupper($letra);
$dni = $nums.$letra;
$link = conectar();
$resultado = mysql_query("select dni from usuarios where oid <> '$oid' and dni='$dni'",$link);
$num = mysql_num_rows($resultado);
if($num > 0){
$existe[0] = 1;
} else {
$existe[0] = 0;
}
/** EXISTENCIA DE CORREO ELECTRÓNICO **/
if ((isset($dni)) && ($dni != '')) {
$resultado = mysql_query("select email from usuarios where oid <> '$oid' and email='$email'",$link);
$num = mysql_num_rows($resultado);
$resultado = mysql_query("select email from usuarios where oid <> '$oid' and email='$email'",$link);
$num = mysql_num_rows($resultado);
if($num > 0){
$existe[1] = 1;
if($num > 0){
$existe[1] = 1;
}
} else {
$existe[1] = 0;
}
/** EXISTENCIA DE NOMBRE Y APELLIDOS **/
if($nombre == "-"){
$dato = " ";
}else{
} else {
$dato = $nombre;
}
$total = trim($dato." ".$apellidos);
$consulta = "select email from usuarios where oid <> '$oid' and CONCAT(nombre,' ',apellidos)='$total' or apellidos='$total'";
$resultado = mysql_query($consulta,$link);
$num = mysql_num_rows($resultado);
if($num > 0){
$existe[2] = 1;
} else {
$existe[2] = 0;
}
return $existe;
}

View File

@ -8,7 +8,7 @@ if (!comprobar_permisos("AC")){
}
include_once("html/cabecera.php");
menu_candidatos("");
//??????????????????????menu_candidatos("");
echo "<h2>".$locale['1542']."</h2>";
@ -25,22 +25,24 @@ while (( $data = fgetcsv ( $fp , 1000 , "," )) !== FALSE ) { // Mientras hay l
foreach($data as $row) {
$aciertos = "";
$errores = "";
$datos = explode(";",$row);
$nombre = "-";
$apellidos = $datos[0];
$email = $datos[1];
$t_movil = $datos[2];
$datos = explode(";",$row);
$existe = existe("", $nombre, $apellidos, $email);
$nombre = $datos[0];
$apellidos = $datos[1];
$email = $datos[2];
$t_movil = $datos[3];
$existe = existe(NULL, $nombre, $apellidos, $email, NULL);
//Registramos al candidato
if ($link = conectar()){
include_once("existe_persona.php");
if ($link = conectar()) {
//include_once("existe_persona.php");
if($existe == true){
if (($existe[0] == 1) || ($existe[1] == 1) || ($existe[2] == 1)) {
$errores .= $locale['1516'];
}else{
$inserto = "tipo,email,nombre,apellidos,t_movil,fecha_alta,fecha_modificacion";
$valores = "'candidato','$email','$nombre','$apellidos','$t_movil',curdate(),curdate()";
} else {
$inserto = "tipo,email,nombre,apellidos,t_movil,fecha_alta,fecha_modificacion,procedencia";
$valores = "'candidato','$email','$nombre','$apellidos','$t_movil',curdate(),curdate(),'1'";
$consulta = "insert into usuarios ($inserto) values ($valores)";
$resultado = mysql_query($consulta,$link);
if ($resultado){
@ -58,26 +60,25 @@ while (( $data = fgetcsv ( $fp , 1000 , "," )) !== FALSE ) { // Mientras hay l
}
}
}
}else{
$errores .= $locale['010'].mysql_error();
} else {
$errores .= $locale['010'].mysql_error();
}
if($errores == ""){
$i = $i+1;
$resu = "$apellidos ".$locale['1543'].".";
$resu = "$nombre $apellidos ".$locale['1543'].".";
echo mostrar_aciertos($resu);
}else{
$a = $a+1;
$resu = "$apellidos ".$locale['1544']." $errores.";
$resu = "$nombre $apellidos ".$locale['1544']." $errores.";
echo mostrar_errores($resu);
}
}
}
echo $locale['1545']." $i</br>";
echo $locale['1546']." $a</br>";
//Finalmente, el resumen del número de registros que se han importado y los que han fallado.
echo $locale['1545']." $i<br/>";
echo $locale['1546']." $a<br/>";
fclose ( $fp );
//Finalmente, el resumen del número de registros que se han importado y los que han fallado.
?>

37998
querys.log

File diff suppressed because it is too large Load Diff