Foros del Web » Programando para Internet » PHP »

de DBF a MYSQL en PHP

Estas en el tema de de DBF a MYSQL en PHP en el foro de PHP en Foros del Web. Holaa todos soy nuevo aca, Saben necesito saber si puedo hacer un Update de un archivo dbf, que lo crea un programa de clipper, a ...
  #1 (permalink)  
Antiguo 31/03/2004, 10:44
Avatar de mauricio2004  
Fecha de Ingreso: marzo-2004
Mensajes: 264
Antigüedad: 20 años
Puntos: 0
de DBF a MYSQL en PHP

Holaa todos soy nuevo aca,

Saben necesito saber si puedo hacer un Update de un archivo dbf, que lo crea un programa de clipper, a MYSQL por php.

Se agradeceria mucha su ayuda.

Saludos

Mauricio, Chile
  #2 (permalink)  
Antiguo 31/03/2004, 11:19
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 4 meses
Puntos: 11
si, para conectarte a los dbf usa las funciones odbc de php.
__________________
Dedicado a proyectos web, actualmente desarrollando un sistema de diseño de flyers online muy fácil de usar.
  #3 (permalink)  
Antiguo 31/03/2004, 12:09
Avatar de mauricio2004  
Fecha de Ingreso: marzo-2004
Mensajes: 264
Antigüedad: 20 años
Puntos: 0
Claudio, gracias por tu respuesta pero necesito como hacerlo, atraves de una pagina que hace un upload
  #4 (permalink)  
Antiguo 31/03/2004, 12:28
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Con un "upload" si tu servidor no dispone de soporte ODBC no vas hacer mucho ...

Tu servidor dipone de soporte ODBC?

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 31/03/2004, 12:37
Avatar de mauricio2004  
Fecha de Ingreso: marzo-2004
Mensajes: 264
Antigüedad: 20 años
Puntos: 0
mira lo vi en phpinfo() y creo que no esta instalado (deberia salir ahi me parece).
lo puedo hacer con un *.xls
  #6 (permalink)  
Antiguo 31/03/2004, 13:31
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Y .. podría ser un CVS? (exportando tus .xls al formato "campos separados por comas y registros por salto de línea) ..

Si puedes .. revisa esta classe para tal fin:
http://www.phpclasses.org/browse/package/842.html

Te lo comento por qué depende de la complejidad de tu .xls sobre todo si hay formulas y cosas así ... PHP podría obtener sus datos pero lo más probable que usando COM (www.php.net/com) pero para eso PHP tendría que estar ejecutandose en un servidor Windows (y .. no lo has comentado pero parace que usas tu servicio de hosting habitual que usa Linux como S.O,.?)

Un ejemplo de tratamiento de .xls .. OJO! Necesita de Windows como S.O.
http://www.phpclasses.org/browse/package/86.html

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 31/03/2004, 13:41
Avatar de mauricio2004  
Fecha de Ingreso: marzo-2004
Mensajes: 264
Antigüedad: 20 años
Puntos: 0
Cluster:


Gracias por tu ayuda, me sirvio mucho para aclarar dudas, ya lo habia hecho por cvs, y me resulta., solo lo queria con menos pasos

sabes una cosa, subo dbf como lo tengo asi no mas, mas adelante te muetro el codigo y me puestra todos los datos pero juntos, no me los separa, ademas salen unos cuadrador al principio de la linea, sera por que esta en binario, me imagino yo.

ahi va el codigo


$lines = file ($_FILES['userfile']['tmp_name']);
$i=0;


foreach ($lines as $line)
{
$values = explode (";",$line);
echo "$values[0]<br>";
echo "$values[1]<br>";
$query= "INSERT INTO MyTable (numero1, numero2, numero3, numero4, numero5, numero6, numero7, numero8) VALUES ('$values[0]', '$values[1]', '$values[2]', '$values[3]', '$values[4]', '$values[5]', '$values[6]', '$values[7]')";
$rs=mysql_query ($query);
if ($rs)
{
echo "se guardaron correctamente<br>";
}
else
{
echo "no se guardaron los datos<br>";
}
echo "$values[0],$values[1],$values[2],$values[3],$values[4],$values[5],$values[6],$values[7],$values[8]<br>";
}


eso si queria que hace un insert, habria quer cambiarlo como update. me puedes dar un tipo de consejo.

PD: Gracias por todo las dudas aclaradas, por el ODBC
  #8 (permalink)  
Antiguo 31/03/2004, 13:52
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 4 meses
Puntos: 11
y no tienes una herramienta cliente para administrar mysql? o es necesario que controles la actualizacion de los registros por codigo?

lo digo por que es posible pasarle a mysql los datos desde un archivo CSV sin programarlo.
__________________
Dedicado a proyectos web, actualmente desarrollando un sistema de diseño de flyers online muy fácil de usar.
  #9 (permalink)  
Antiguo 31/03/2004, 14:03
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
No conozco el formato .dbf .. pero algún formato tendrá y en consecuencia deberas pre-filtralo para elminar todos esos caracteres de más que ves ... y luego buscar el separador de campos caracteristico y el de registros (que será otro código o caracter especial si ese .dbf es un archivo de texto plano ? ...)

--------

Para hacer un "UPDATE" .. tendras que saber a que registro de tu Mysql BD (tabla) lo vas hacer .. para componer tu sentencia SQL condicional adecuada:

UPDATE FROM tabla SET campo=$valor WHERE alguncampo=$condicion

Ahora .. lo que no sé como vas a conseguirte esa "condición" si es que depende de algún dato de tu .dbf (por qué primero tendras que dejar el dato en cuestión "limpio" y localizado).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #10 (permalink)  
Antiguo 31/03/2004, 14:08
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Cita:
o digo por que es posible pasarle a mysql los datos desde un archivo CSV sin programarlo.
Y desde un .dbf o .xls directo con GUI's para Mysql tipo (windows):

Navicat
www.mysqlstudio.com

EMS SQL Manager
www.mysqlmanager.com

Si pudieras conectar de forma remota hacia tu BD Mysql (cosa que es probable que tu servicio de hosting si lo usas no te deje hacer ..) podrías usar en tu PC alguno de estos GUI's y hacer el proceso en un par de click's ...

Pero todo depende de que si quieres hacer una aplicación para los usuarios o ese proceso lo vas a gestionar tu como programador/webmaster del sitio/aplicación ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #11 (permalink)  
Antiguo 31/03/2004, 14:13
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 4 meses
Puntos: 11
otra cosa es que el trabajo lo podria hacer en casa, en un servidor mysql local con la misma base de datos y luego subir el archivo .sql que se genere al exportar los datos en dicho formato, con lo cual es mas facil realizar la actualizacion

yo para eso recomiendo sqlyog (www.webyog.com)
__________________
Dedicado a proyectos web, actualmente desarrollando un sistema de diseño de flyers online muy fácil de usar.
  #12 (permalink)  
Antiguo 31/03/2004, 14:48
Avatar de mauricio2004  
Fecha de Ingreso: marzo-2004
Mensajes: 264
Antigüedad: 20 años
Puntos: 0
gracias a todos por sus respuestas
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 22:21.