Ver Mensaje Individual
  #3 (permalink)  
Antiguo 23/06/2011, 13:26
Avatar de saseisa
saseisa
 
Fecha de Ingreso: agosto-2006
Mensajes: 329
Antigüedad: 18 años, 2 meses
Puntos: 9
Respuesta: Es de php con csv y mysql

hola fernanda yo utilizo este codigo para subir el archivo de csv a mysql espero t pueda servir

Código PHP:
<?php
//user y pass y database name
$tbl "tu_tabla_donde_insertas";
$host="localhost";
$user="usuario";
$pass="contrasena";
$database="nombre_bd";
//$filename="CIUDAD.csv";
//como vamos a delimitar el csv
function getcsv($filename$delim =","){

$row 0;
$dump = array(); //creamos un array para el csv

$f fopen ($filename,"r");
$size filesize($filename)+1;
while (
$data fgetcsv($f$size$delim)) {
$dump[$row] = $data//ponemos los datos en el array
//echo $data[1]."<br>";
$row++;
}
fclose ($f);

return 
$dump;
}

//esto pone los datos en la funcion al csv
function makeINSERTS($text$table){
global 
$linkdata//hace la conexion
$insert = array(); //verifica la conexion y la bd
$i 0;

while (list(
$key$val) = @each($text)){
//inserta los datos
$insert[$i] = "INSERT into ".$table." VALUES('','";
$insert[$i] .= implode("','"$val);
$insert[$i] .= "')\n";
echo 
"{$insert[$i]}";
$result mysql_query($insert[$i], $linkdata) or die('Query failed: ' mysql_error());
$i++;
}

return 
$insert;

}

//
if ($_POST["submit"]=="submit") {
if (
is_uploaded_file($_FILES['userfile']['tmp_name'])) {

$file=$_FILES['userfile']['tmp_name'];
$linkdata mysql_connect($host$user$pass)
or die(
'no hay conexion: ' mysql_error());

mysql_select_db($database) or die('no se puede seleccionar la bd');


$CSVarray getcsv($file);
$CSVarray makeINSERTS($CSVarray"$tbl");


} else {
echo 
"error subir archivo";
exit;
}


} else {
//form upload
echo "
<FORM ENCTYPE=\"multipart/form-data\" ACTION=\""
.$_SERVER['PHP_SELF']."\" METHOD=POST>
Upload this file: <INPUT NAME=\"userfile\" TYPE=\"file\">
<INPUT TYPE=\"submit\" VALUE=\"submit\" name=submit></FORM>

"
;
}
?>