Foros del Web » Programando para Internet » PHP »

Como leer BD tipo texto desde PHP?

Estas en el tema de Como leer BD tipo texto desde PHP? en el foro de PHP en Foros del Web. pregunta: tengo un archivo "directorio.txt" tipo base de datos, que esta de la forma: nombre|apellido|direccion|telefono|ciudad.... ¿Alguien sabe de algun codigo en PHP que me permita ...
  #1 (permalink)  
Antiguo 12/03/2004, 20:50
 
Fecha de Ingreso: mayo-2002
Ubicación: concepcion
Mensajes: 21
Antigüedad: 21 años, 11 meses
Puntos: 0
Como leer BD tipo texto desde PHP?

pregunta:
tengo un archivo "directorio.txt" tipo base de datos, que esta de la forma:
nombre|apellido|direccion|telefono|ciudad....

¿Alguien sabe de algun codigo en PHP que me permita buscar con un formulario en esta BD simple(directorio.txt), segun las variables(por nombre,ciudad etc.) y que luego los resultados los imprima en formato web, de 10 resultados por pagina?
esperando la iluminacion de algun Maestro...
saludos a todos..
desde Chile Sylvia

pd. a los hermanos españoles, mi mas sentido pesame por el atentado que sufrieron el día de ayer , es atroz que sucedan cosas asi con gente inocente
FUERZA, AMOR Y PAZ para Uds
  #2 (permalink)  
Antiguo 13/03/2004, 00:18
Avatar de CHILENOCES  
Fecha de Ingreso: octubre-2001
Ubicación: Mmm paseando por la vida
Mensajes: 491
Antigüedad: 22 años, 5 meses
Puntos: 0
Si mal no recuerdo seria algo como esto:

$file = 'archivo.txt';

$fd = fopen ($file, "r");
while (!feof($fd)) {
$buffer = explode('|$dato1|','|$dato2|','|$dato3|',);

echo "$dato1 - $dato2 - $dato3";

}

fclose ($fd);
__________________
ChilenoCesar Looking for something new...
  #3 (permalink)  
Antiguo 14/03/2004, 17:40
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
CHILENOCES .. te faltó el detalle de explicar como ha de ser el formato de datos que guarde en ese ".txt" para que lo pueda leer con tu ejemplo ..

Pero, en resumen se trataría de tener algún caracter como delimitador de campos (se usa mucho el caracter | .. podría ser comas .. etc) y otro caracter para el delimitador de registros (normalmente el salto de línea \n .. )

Revisa también las funciones:
fgets() y afines .. (sobre todo si tienes una estructura de datos tipo la mencionada).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 24/03/2004, 22:19
 
Fecha de Ingreso: marzo-2004
Mensajes: 1
Antigüedad: 20 años
Puntos: 0
Antes que nada un saludo...

Y por supuesto una pregunta... si por ejemplo el archivo "txt" para ser leido mediante PHP tiene datos por columnas, parecido a una hoja de cálculo, pero separados por tabuladores, cono se puede leer y guardar cada campo en una BD de forma automática?

Agradezco su colaboración...
  #5 (permalink)  
Antiguo 25/03/2004, 06:01
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Usa funciones como fopen() y afines para leer el archivo y explode() y como caracter de separador el \t (tabulador..) para procesarlo o bien funciones como fgetcvs() y similares.

Unsaludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 06/06/2004, 21:50
Avatar de GrowingEntropy  
Fecha de Ingreso: junio-2004
Ubicación: Capital Federal (Bs As, Argentina)
Mensajes: 2
Antigüedad: 19 años, 10 meses
Puntos: 0
lo que yo uso generalmente para leer BD de txt es:
<?
$nombre_archivo = "/tmp/ejemplo.txt";
if(is_file($nombre_archivo))
{
$registros = file($nombre_archivo);
for($x = 0;$x < count($lineas); $x++)
{
$campos = explode("\t",$registros[$x]);
}

}

?>

Con la funcion "file()" tenemos en "$registros" un array con las lineas del archivo y con "explode()" de cada "registros[$x]" en cada iteracion del ciclo "for" , un array con los registros de cada linea:

REF:
http://ar.php.net/manual/es/function.file.php
http://ar.php.net/manual/es/function.explode.php

?>
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:53.