Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   PHP (http://www.forosdelweb.com/f18/)
-   -   Insert Masivo MySQL - PHP (http://www.forosdelweb.com/f18/insert-masivo-mysql-php-481024/)

Gustavo_AR 12/04/2007 22:36

Insert Masivo MySQL - PHP
 
Hola, necesito hacer un insert de miles de registros que tengo en un txt, un solo campo + el correspondiente id automático. El tema es que obviamente no quiero hacerlo a mano y no se me ocurre como hacerlo con php. Básicamente quiero que "lea" el archivo, distinga los registros por línea (uno por línea) y los vaya insertando uno por uno... alguna sugerencia?

kaninox 13/04/2007 00:14

Re: Insert Masivo MySQL - PHP
 
esto va a ser algo comun o sea siempre o lo quieres hacer solo por esta ves para ahorarte trabajo... ?

si es para ahorrarte trabajo aplique phpmyadmin ;)
si es para siempre tendras que ver algo de arrays $campo[n];
donde n son valores de 0 a N

Gustavo_AR 14/04/2007 00:54

Re: Insert Masivo MySQL - PHP
 
Lo iba a hacer una sola vez, pero busqué en phpmyadmin y no encontré nada. tengo el recuerdo de haberlo hecho hace un buen tiempo...

Gracias por responder.

diozmilaneza 14/04/2007 07:23

Re: Insert Masivo MySQL - PHP
 
como dijeron, te vas a tener q manejar con arrays

abris el txt con fopen, lees con fread, luego haces un explode para separar cada registro

....

$explode = explode(" ", $datos); ....// POr un espacio, o por cualquier cosa q esten separados los registros, quizas estan por comas, guiones, eso lo sabras vos.

...

luego recorres el array explode, y vas insertando de a uno los datos

foreach ($explode as $key) {
print("INSERT INTO tabla(valor) VALUES('$key')");// te puse print para q veas como queda la sentencia sql, si va bien, reemplaza print por mysql_query y listop
}


creo q asi irias bien,,

slds

Elisa85 14/04/2007 08:45

Re: Insert Masivo MySQL - PHP
 
Si el fichero está todo tal cual lo quieres meter en la base de datos, con phpmyadmin tienes que ir a la pestaña que pone "SQL" y en la parte de abajo puedes hacer que cargue tu txt.

Gustavo_AR 14/04/2007 19:31

Re: Insert Masivo MySQL - PHP
 
Cita:

Iniciado por diozmilaneza (Mensaje 1967720)
Código PHP:

$explode explode(" "$datos); ....// POr un espacio, o por cualquier cosa q esten separados los registros, quizas estan por comas, guiones, eso lo sabras vos.

foreach ($explode as $key) {
print(
"INSERT INTO tabla(valor) VALUES('$key')");// te puse print para q veas como queda la sentencia sql, si va bien, reemplaza print por mysql_query y listop



Los separo de a uno por renglón...


La zona horaria es GMT -6. Ahora son las 03:52.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.