La accion que hago es subir el txt, tomar los registros con mi rutina y guardarlos inmediatamente, hasta ahora todo bien.... lo que quisiera es que me den alguna idea para restringir de que el usuario suba cualquier archivo txt con diferentes contenidos, tan solo el que genera el software. Asi evitar que se me malogre los registros.
Este es el txt que se genera:
Código:
1,JUAN PEREZ,1,1965-04-27,09083462,javiermorey @hotmail.com,562-1456,9924-2268,AMSTERDAM 276 ,2009-01-26,2009-02-05,000001 1,VANNY LISSET,VASQUEZ VARGAS,1,1982-03-12,DNI.08070605,[email protected],36985214,,AV SAN BORJA,2009-02-03,2009-02-05,000005 1,SARA JULIA,RIVERA CASTRO,1,1970-08-13,DNI. 23654414,[email protected],45667-554,,AV. SANTA ROSA # 3252009-02-03,2009-02-05,2009-02-06,000006
Bueno y esta es la rutina que hago, pero que condicion puedo poner antes de guardar registros?
Código PHP:
<?php
//subo el archivo temporalmente
$fisico = $_FILES["archivo"]["tmp_name"];
$archivo = $fisico;
if($_FILES["archivo"]["type"]=="text/plain"){
$fp = fopen($archivo,'r');
$cadena = fread($fp, filesize($archivo));
$arreglo = explode("\n", $cadena);
$resultado = Array();
foreach($arreglo as $linea)
{
$partes = explode(",", $linea);
$estado = $partes[0];
$nombre = $partes[1];
$apellido = $partes[2];
$flagedad = $partes[3];
$nacimiento = $partes[4];
$dni = $partes[5];
$email = $partes[6];
$telefono = $partes[7];
$telefono2 = $partes[8];
$direccion = $partes[9];
$registro = $partes[10];
$modificacion = $partes[11];
$identificador = $partes[12];
$sql="call registra_paciente(1,'$nombre','$apellido','$flagedad','$nacimiento','$dni','$email','$telefono','$telefono2','$direccion','$registro','$modificacion',$identificador)";
echo $sql."<br>";
//de ahi viene el query para guardar
//cierro el foreach
}
//cierro el if y pongo la seguna condicion
}else{
echo "no es txt";
}
?>