Ver Mensaje Individual
  #3 (permalink)  
Antiguo 16/09/2005, 07:30
JordiSolanas
 
Fecha de Ingreso: junio-2004
Mensajes: 53
Antigüedad: 19 años, 11 meses
Puntos: 3
de excel a mysql

A mi me pasaron lo que sigue abajo y me funciona.
Que te vaya bien.

Seguramente, os habéis preguntado como poder pasar los datos de una hoja de Excel a una Base de Datos
Mysql, por ejemplo, para que la gente pueda ver los artículos que hay en mi almacén.
1.-El primer paso es crear la tabla.
CREATE TABLE almacen
(
articulo CHAR(80),
color CHAR(20) ,
material CHAR(60),
precio INTEGER
);
2.- El segundo paso es convertir el fichero de excel en un fichero con formato (.CSV).

Esto consiste en generar un fichero, donde los datos de cada fila van separados por coma.

Para guardarlo se debe seleccionar "Guardar como" y elegir el Tipo (CSV "Delimitado por comas").
Le damos el nombre "datos.csv".

El fichero generado quedaría algo así:

Camiseta,Blanca,Algodón,1500
Pantalón,Azul,Algodón,5000
Jersey,Negro,Algodón,3500
Malla,Azul,Algodón,3000
Top,Blanco,Algodón,3400
Correa,Negra,Cuero,3400
Gorra,Colores,Algodón,1400
Calcetines,Blancos,Algodón,500
3.-El tercer paso es leer el fichero "datos.scv" y meterlo el la tabla "Almacen" de la Base de Datos.
<?php

require("conexion.inc");
$row = 1;

$fp = fopen ("datos.scv","r");
while ($data = fgetcsv ($fp, 1000, ","))
{
$num = count ($data);
print " <br>";
$row++;

echo "$row.". $data[0]." ------------ ".$data[1]."-------".$data[3];
$insertar="INSERT INTO almacen (articulo,color,material,precio) VALUES ('$data[0]','$data[1]','data[2]','data[3]')";
mysql_query($insertar);
}
fclose ($fp);
?>
Esto lo único que hace, es leer del fichero datos.csv e introducirlo en el Almacén.
PASAR EL CONTENIDO DE UNA TABLA A UN FICHERO DE EXCEL.
$archivo="archivo.xls";
$busca=mysql_query(SELECT * FROM clientes");
while ($row = mysql_fetch_row($busca))
{
$a=$row[0];
$a.=",$row[1]";
$a.=",$row[2]";
$a.=",$row[3]";
$a.=",$row[4] \n";
echo $a;
$p=fopen("$archivo","a");
if($p)
{
fputs($p,$a);
}
}
fclose($p);
echo "<a href=$archivo>Ver archivo</a>"