Foros del Web » Programando para Internet » PHP »

Insertar automaticamente en una bd MySQL con php...?

Estas en el tema de Insertar automaticamente en una bd MySQL con php...? en el foro de PHP en Foros del Web. buenas, no se si lo que voy a comentar es posible o no. la idea es que un programa me genera un archivo (cualquier formato, ...
  #1 (permalink)  
Antiguo 29/01/2008, 09:03
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 3 meses
Puntos: 3
Insertar automaticamente en una bd MySQL con php...?

buenas,

no se si lo que voy a comentar es posible o no. la idea es que un programa me genera un archivo (cualquier formato, aunque supongo que es preferible un txt).

tengo una bd en mysql, y mediante php inserto, modifico, borro etc en una base de datos. cada dato lo administro por serparado, es decir, voy insertando los registros.

mi pregunta es, que al igual que yo voy al phpMyAdmin y pongo insertar desde un archivo externo, tabulado y tal, podria llegar a hacer en php un proceso que me leyese un archivo de texto y me lo insertara automaticamente en una base de datos?

esperando vuestra respuesta,

saludos
  #2 (permalink)  
Antiguo 29/01/2008, 10:52
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 3 meses
Puntos: 3
Re: Insertar automaticamente en una bd MySQL con php...?

nadie puede darme ninguna orientación sobre el tema?

saludos
  #3 (permalink)  
Antiguo 29/01/2008, 11:15
Avatar de radamantys  
Fecha de Ingreso: agosto-2006
Mensajes: 46
Antigüedad: 17 años, 8 meses
Puntos: 1
Re: Insertar automaticamente en una bd MySQL con php...?

Buenas, claro que la hay, es simple. Usa la funcion File de PHP. Esta funcion devuelve el texto de un archivo en un array donde cada celda es una fila del archivo. Un ejemplo

Código PHP:

$conexion 
datosConexion();
$rutaArchivoTexto "BaseDatos1.sql";

$filasArchivo File($rutaArchivoTextoFILE_IGNORE_NEW_LINES);

// FILE_IGNORE_NEW_LINES -> Esta constante nos evita que nos agrege 
//un salto de linea al final de cada linea, evitando asi. que al final de cada 
//sentencia aparezca el simbolo '\n'

foreach($filasArchivo as $query)
{

mysql_query($query$conexion);


Creo que este ejemplo te valdra. Pero tienes que tener una condicion sobre el archivo. Y es que debe haber una unica sentencia por cada linea. No puede haber una peticion que ocupe mas de una linea, ni puede haber 2 o mas sentencias en una misma linea.

Última edición por radamantys; 29/01/2008 a las 11:22
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 10:32.