Foros del Web » Programando para Internet » PHP »

Importar txt a mysql con php validando campos

Estas en el tema de Importar txt a mysql con php validando campos en el foro de PHP en Foros del Web. Buenas gente, ando necesitando si me pueden ayudar sobre como importar datos de un archivo plano (.txt) a una tabla en mysql. El tema es ...
  #1 (permalink)  
Antiguo 05/03/2013, 11:01
Avatar de Nico0601  
Fecha de Ingreso: diciembre-2012
Ubicación: Buenos Aires, Zona Sur
Mensajes: 134
Antigüedad: 11 años, 4 meses
Puntos: 0
Importar txt a mysql con php validando campos

Buenas gente, ando necesitando si me pueden ayudar sobre como importar datos de un archivo plano (.txt) a una tabla en mysql.
El tema es que tengo que validar los datos que vienen en el .txt para que no me inserten basura.
La tabla seria algo como esto:
apellido, nombre, cuil, basico, bruto, afiliado, aporte
El .txt vendria con esta definicion separado por coma, pero quiero comprobar que en apellido y nombre sean letras, en cuil numeros, etc.
Como puedo hacer esto? no encontre nada al respecto.

Muchas gracias
__________________
Nico...
  #2 (permalink)  
Antiguo 05/03/2013, 11:34
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 12 años, 11 meses
Puntos: 76
Respuesta: Importar txt a mysql con php validando campos

hola

mmm podria ser asi,

En tu archivo txt me imagino iria algo como :

Juan;Perez;7878979

Código PHP:
Ver original
  1. $file = file_get_contents("datos.txt");
  2. $separador = explode(";",$file);
  3. $nombres = $separador[0];
  4. $apellidos = $separador[1];
  5. echo $telefono = $separador[2];
y ya podrias validar cada campo

Mas o menos para que te guies
  #3 (permalink)  
Antiguo 05/03/2013, 11:42
Avatar de Nico0601  
Fecha de Ingreso: diciembre-2012
Ubicación: Buenos Aires, Zona Sur
Mensajes: 134
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Importar txt a mysql con php validando campos

Ok! Muchas gracias....una cosa mas.....como hago para que el nombre del archivo no sea un nombre especifico, mi idea es poner el boton examinar y que cada empresa busque en su pc el archivo .txt
__________________
Nico...
  #4 (permalink)  
Antiguo 05/03/2013, 11:46
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 12 años, 11 meses
Puntos: 76
Respuesta: Importar txt a mysql con php validando campos

tendrias que subir el archivo al servidor desde el formulario, hacer todo el proceso y eliminarlo

mira este ejemplo de como subir archivos

http://blog.unijimpe.net/upload-de-archivos-con-php/
  #5 (permalink)  
Antiguo 05/03/2013, 12:52
Avatar de pzyrichipz  
Fecha de Ingreso: junio-2010
Ubicación: Metepec, Mexico
Mensajes: 66
Antigüedad: 13 años, 9 meses
Puntos: 5
Respuesta: Importar txt a mysql con php validando campos

Cita:
Iniciado por informacionsys Ver Mensaje
tendrias que subir el archivo al servidor desde el formulario, hacer todo el proceso y eliminarlo

mira este ejemplo de como subir archivos

[url]http://blog.unijimpe.net/upload-de-archivos-con-php/[/url]


mejor lee algo de archivos CSV archivos separados por coma creo que e slo mejor para tu trabjo que comentas :D y el nombre maneja el explode y nombralo como tu quieras
  #6 (permalink)  
Antiguo 08/03/2013, 13:24
Avatar de Nico0601  
Fecha de Ingreso: diciembre-2012
Ubicación: Buenos Aires, Zona Sur
Mensajes: 134
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Importar txt a mysql con php validando campos

Bueno gente, buscando de todo un poco logre subir archivos .csv a mi base de datos.
El tema es que quiero comprobar antes que esos datos sean correctos, por ejemplo donde sean numeros que metan numeros y asi con los campos alfabeticos.
Les paso el codigo para que lo vean y opinen a ver como puedo hacer eso.
Una parte del form es asi mas o menos
Código HTML:
<form id="subir" name="subir" action="subir.php" enctype="multipart/form-data" method="post">
        <table border="1" >
		<tr>
			<td>
				Archivo <input type="file" id="archivo" name="archivo"/>
			</td>
		</tr>
		<tr>
			<td>
				<input type="submit" value="Importar" />
			</td>
		</tr>
        </table>
        </form> 
Y en subir.php
Código PHP:
<?php
include("conexion.php");
$row 1;
$handle fopen("archivo.csv""r"); 
while ((
$data fgetcsv($handle1000",")) !== FALSE) { 
    
$num count($data); 
    
$row++;
    
$cadena "insert into ddjj values(null,"
    for (
$c=0$c $num$c++) { 
        if (
$c ==($num-1))
              
$cadena $cadena."'".$data[$c] . "'";
        else
              
$cadena $cadena."'".$data[$c] . "',";
    }

    
$cadena $cadena.");"

    
$result mysql_query($cadena);

}

fclose($handle);
?>
Espero comentarios....
Gracias
__________________
Nico...

Etiquetas: campos, mysql, tabla, txt
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:51.