este es el codigo:
phpexcel.php
Código PHP:
<?php
//user y pass y database name
$tbl = "phpexcel";
$host="localhost";
$user="manux";
$pass="12345";
$database="prueba";
//$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["Cargar"]=="Cargar") {
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>
Cargar Archivo: <INPUT NAME=\"userfile\" TYPE=\"file\">
<INPUT TYPE=\"submit\" VALUE=\"Cargar\" name=Cargar></FORM>
";
}
?>
1,manuel,[email protected]
2,yosimar,[email protected]
3,luis,[email protected]
4,jose,[email protected]
5,manuel2,[email protected]
6,yosimar2,[email protected]
7,luis2,[email protected]
8,jose2,[email protected]
9,manuel3,[email protected]
10,yosimar3,[email protected]
y la base de datos es esta:
phpexcel.sql
id int(11) AUTO_INCREMENT
nombre varchar(100) utf8_general_ci
correo varchar(100) utf8_general_ci
y me muestra este error :
INSERT into phpexcel VALUES('',')1','manuel','[email protected]') Query failed: Column count doesn't match value count at row 1
por favor alguien que me pueda ayudar a correguir esa falla e hecho de todo y nada, les estaría muy agradecido