sql >> Base de Datos >  >> RDS >> Mysql

Importar cols de excel a sql

Me las arreglé para darme cuenta de que funcionará con array. Todavía no lo he solucionado, pero pondré mi código aquí, tal vez puedas ayudarme.

<?php
   function csv_to_array($filename='', $delimiter=',') {
    if(!file_exists($filename) || !is_readable($filename))      return
   FALSE;       $header = NULL;     $data = array();    if (($handle =
   fopen($filename, 'r')) !== FALSE)    {       while (($row =
   fgetcsv($handle, 1000, $delimiter)) !== FALSE)       {           if(!$header)
                $header = $row;
                        else
                $data[] = array_combine($header, $row);
                    }       fclose($handle);    }   return $data; } /**  * Example  */ print_r(csv_to_array('example.csv'));

   ?>

mi archivo csv se ve así:

cod_piesa, lungime, latime, inaltime
gl, 5000,, 150
fd, 3000, 2000, 100

lo que quiero hacer es insertar en una tabla mysql como esta

row = 0
cod_piesa = GL
header = lungime
value = 5000

next one

row = 0
cod_piesa = GL
header = latime
value = NULL

row = 0
cod_piesa = GL
header = inaltime
value = 150

row = 1
cod_piesa = FD..... and so on.

La tabla mysql se llama tbl_drafts y tiene las columnas draft_id, row, cod_piesa, header, value. draft_id es una ID temporal que generaré digamos $draft_id=1

después de insertar, necesito redirigirlo a una nueva página donde compararé diferentes resultados, digamos 'verification.php'.

Muchas gracias por todas sus respuestas

Por el momento, estoy usando un archivo que se carga en el servidor, pero necesitaría tener una opción de carga manual donde el visitante pueda cargar el archivo CSV o Excel.

Estoy seguro de que esto ayudará a mucha gente si se resuelve. Eché un vistazo a la opción de transposición, pero no pude resolverlo.