Foros del Web » Programando para Internet » PHP »

datos de base de datos pasarlo a txt

Estas en el tema de datos de base de datos pasarlo a txt en el foro de PHP en Foros del Web. buenas como se puede pasar todos los datos d una tabla de mysql a un fichero txt separado cada campo por ; ?...
  #1 (permalink)  
Antiguo 04/07/2004, 16:41
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 14 años
Puntos: 0
datos de base de datos pasarlo a txt

buenas como se puede pasar todos los datos d una tabla de mysql a un fichero txt separado cada campo por ; ?
  #2 (permalink)  
Antiguo 05/07/2004, 02:39
 
Fecha de Ingreso: mayo-2004
Mensajes: 89
Antigüedad: 13 años, 6 meses
Puntos: 1
Eso se puede hacer con phpMyAdmin. Tienes que seguir los mismos pasos que cuando vas a hacer una copia de seguridad.
Hasta otra!
  #3 (permalink)  
Antiguo 05/07/2004, 11:36
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 14 años
Puntos: 0
ya , pero mi intencion es k sake los datos d la base de datos para despues imprimirlos, y para poder imprimirlos tienen q estar en .txt q lo tendria q generar desde php, yo desde phpmyadmin se hace hacerlo pero seria hacerlo desde php
  #4 (permalink)  
Antiguo 05/07/2004, 13:36
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Fijate bien ..

Si actualmente sabes hacer una consulta SQL a tu BD . .y obtienes los datos y los muestras en formato HTML usando tus tag de tablas y demás .. ahora lo que requieres es generar ese archivo (sea al disco de tu servidor para luego ofrecer un link de descarga o directamente generar ese archivo y ofrecerlo para descargar en el mismo proceso).

Si ahora haces para presentar tus datos en HTML algo tipo:

Código PHP:
while ($row=mysql_fetch_array($consulta)){
echo 
"<b>".$row['campo']."<b><br>";
echo 
"<b>".$row['campo2']."<b><br>";

donde .. le das formato y usas el código HTML que necesitas para presentarlo de la forma que gustas ..

Para un archivo de texto plano .. el "separador de línea" es el código:
\n
(o \r o \r\n según S.O. .. )

así que sólo tienes que componer tus "registros" separados por el salto de línea y tus campos por comas:

Código PHP:
$linea_txt='';
while (
$row=mysql_fetch_array($consulta)){
$linea_txt .= $row['campo'].",".$row['campo2']."\n";

Todo ello concatenado sobre una variable para posteriromente poder abir el archivo que vamos a guardar esos datos o entregarlo a descargar si corresponde directamente.

Usando las funciones fopen() y fwrite() .. sólo tieens que hacer el fwrite(...,$lineas_txt);

(o compones las cabeceras HTTP con header() adecuadas para entregar el archivo generado, mejor dicho los datos de esa variable con ese formato al navegador para su descarga ).

Un saludo,
  #5 (permalink)  
Antiguo 05/07/2004, 13:52
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 14 años
Puntos: 0
me explique mal, tengo echo una pagina php q te convierte esos datos a pdf, pero resulta q necesita los datos en un fichero de texto .txt, y por eso cada q vez q entre el cliente e introduzca datos, ese mismo .txt se ira actualizando para su impresion, por eso digo si hay algun comando desde php q genere un .txt con los datos d una tabla
  #6 (permalink)  
Antiguo 05/07/2004, 14:09
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Karpoj23 ..

Ya te lo he mencionado como tienes que hacerlo ..

Al igual que lanzas tu código que genera ese PDF .. también tendras que generar ese .txt como te mostré.

Generas tu pdf y luego tu .txt antes o despues .. pero en el mismo momento que obtienes tus datos de tu BD para generar el PDF debes usarlos para generar ese .txt

Un saludo,
  #7 (permalink)  
Antiguo 07/07/2004, 13:33
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 14 años
Puntos: 0
bueno ahora tengo el problema de q abro el fichero para k cada vez q se abra borre el contenido que tenia y escriba d nuevo pero como escribo la variable del contenido que tenia?

$texto=$linea['ref'].",".$linea['nombre'].",".$linea['habs'].",".$linea['id'].",".$linea['ciudad'].",".$linea['precio'].",".$linea['foto']."\n";

$fd = fopen($texto, "w+");

como puedo poner q el contenido de $texto se introduzca en $fd y ya cerrar el fichero con el contenido de $texto?
  #8 (permalink)  
Antiguo 07/07/2004, 13:35
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 14 años
Puntos: 0
perdon era esto lo k tengo puesto

$texto=$linea['ref'].",".$linea['nombre'].",".$linea['habs'].",".$linea['id'].",".$linea['ciudad'].",".$linea['precio'].",".$linea['foto']."\n";

$archivo = fopen("archivo.txt","a+");
  #9 (permalink)  
Antiguo 07/07/2004, 14:07
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pero .. quieres añadir contenido a ese archivo (líneas) o necesitas leer lo que había (para modificarlo si corresponde) + añadir algo más (tus variables) y generar un nuevo archivo (con el mismo nombre .. u otro es lo de menos).

En tal caso tienes dos opciones:

1) Usas el modo "a" .. en fopen() .. Esto te permitirá añadir contenido "automáticamente" a lo que había.

2) lees el archivo (lo abres en modo lectura al menos con fopen() o file() .. o la función que gustes). Lo llevas a una variable .. añades (concatenando .. o añadiendo elementos a tu array si usastes file() ..) para luego volcarlo todo (el resultado) al archivo con fopen() y fwrite() ..

Un saludo,
  #10 (permalink)  
Antiguo 07/07/2004, 14:27
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 14 años
Puntos: 0
kiero borrar el contenido que tiene cada vez q se realice, y q añada el contenido de lineas.
  #11 (permalink)  
Antiguo 09/07/2004, 12:11
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 14 años
Puntos: 0
$texto=$linea['ref'].",".$linea['nombre'].",".$linea['habs'].",".$linea['id'].",".$linea['ciudad'].",".$linea['precio'].",".$linea['foto']."\n";

$fd = fopen($texto, "w+");

como puedo poner q el contenido de $texto se introduzca en $fd y ya cerrar el fichero con el contenido de $texto?
  #12 (permalink)  
Antiguo 10/07/2004, 16:12
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Y .. ya vistes lo que hace la función:

fwrite()
www.php.net/fwrite

Estás usando mál fopen() .. revisalo en la documentación oficial de PHP.: www.php.net/fopen ..


Un saludo,
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 06:06.