hola, buenas tardes.
necesito ayuda en lo siguiente.
Quiero subir un archivo excel. a una carpeta de la pagina web, y guardar os datos del archivo excel en la base de datos mysql.
alguien tiene algun conocimiento sobre esto.
Gracias
| |||
subir archivo excel a carpeta de servidor y guardar datos en mysql hola, buenas tardes. necesito ayuda en lo siguiente. Quiero subir un archivo excel. a una carpeta de la pagina web, y guardar os datos del archivo excel en la base de datos mysql. alguien tiene algun conocimiento sobre esto. Gracias |
| |||
Respuesta: subir archivo excel a carpeta de servidor y guardar datos en mysql Claro. Si quieres sugerencias, comienza por investigar sobre la librería phpexcel de codeplex. Si quieres que te hagan el trabajo, puedes poner una propuesta de empleo. |
| |||
Respuesta: subir archivo excel a carpeta de servidor y guardar datos en mysql Eso hize investigue sobre phpexcel y estoy traando de incorporarlo pero no me carga el archivo me aparece error time_out y que la pagina no se a podido encontrar. este el el codigo que estoy usando para subir el archivo y guardar en la base de datos <!-- http://ProgramarEnPHP.wordpress.com --> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>:: Importar de Excel a la Base de Datos ::</title> </head> <body> <!-- FORMULARIO PARA SOICITAR LA CARGA DEL EXCEL --> Selecciona el archivo a importar: <form name="importa" method="post" action="<?php echo $PHP_SELF; ?>" enctype="multipart/form-data" > <input type="file" name="excel" /> <input type='submit' name='enviar' value="Importar" /> <input type="hidden" value="upload" name="action" /> </form> <!-- CARGA LA MISMA PAGINA MANDANDO LA VARIABLE upload --> <?php extract($_POST); if ($action == "upload"){ //cargamos el archivo al servidor con el mismo nombre //solo le agregue el sufijo bak_ $archivo = $_FILES['excel']['name']; $tipo = $_FILES['excel']['type']; $destino = "bak_".$archivo; if (copy($_FILES['excel']['tmp_name'],$destino)) echo "Archivo Cargado Con Éxito"; else echo "Error Al Cargar el Archivo"; //////////////////////////////////////////////////////// if (file_exists ("bak_".$archivo)){ /** Clases necesarias */ require_once('Classes/PHPExcel.php'); require_once('Classes/PHPExcel/Reader/Excel2007.php'); // Cargando la hoja de cálculo $objReader = new PHPExcel_Reader_Excel2007(); $objPHPExcel = $objReader->load("bak_".$archivo); $objFecha = new PHPExcel_Shared_Date(); // Asignar hoja de excel activa $objPHPExcel->setActiveSheetIndex(0); //conectamos con la base de datos $cn = mysql_connect ("localhost","colibri","Colibri1232") or die ("ERROR EN LA CONEXION"); $db = mysql_select_db ("ohl_db",$cn) or die ("ERROR AL CONECTAR A LA BD"); // Llenamos el arreglo con los datos del archivo xlsx for ($i=1;$i<=47;$i++){ $_DATOS_EXCEL[$i]['nocontrol'] = $objPHPExcel->getActiveSheet()->getCell('B'.$i)->getCalculatedValue(); $_DATOS_EXCEL[$i]['nombre'] = $objPHPExcel->getActiveSheet()->getCell('C'.$i)->getCalculatedValue(); $_DATOS_EXCEL[$i]['grado']= $objPHPExcel->getActiveSheet()->getCell('D'.$i)->getCalculatedValue(); $_DATOS_EXCEL[$i]['grupo']= $objPHPExcel->getActiveSheet()->getCell('E'.$i)->getCalculatedValue(); $_DATOS_EXCEL[$i]['sexo'] = $objPHPExcel->getActiveSheet()->getCell('F'.$i)->getCalculatedValue(); } } //si por algo no cargo el archivo bak_ else{echo "Necesitas primero importar el archivo";} $errores=0; //recorremos el arreglo multidimensional //para ir recuperando los datos obtenidos //del excel e ir insertandolos en la BD foreach($_DATOS_EXCEL as $campo => $valor){ $sql = "INSERT INTO alumnos VALUES (NULL,'"; foreach ($valor as $campo2 => $valor2){ $campo2 == "sexo" ? $sql.= $valor2."');" : $sql.= $valor2."','"; } $result = mysql_query($sql); if (!$result){ echo "Error al insertar registro ".$campo;$errores+=1;} } ///////////////////////////////////////////////////////////////////////// echo "<strong><center>ARCHIVO IMPORTADO CON EXITO, EN TOTAL $campo REGISTROS Y $errores ERRORES</center></strong>"; //una vez terminado el proceso borramos el //archivo que esta en el servidor el bak_ unlink($destino); } ?> </body> </html> |
Etiquetas: |