Hola,
después de trastear un poco por ahí, he creado el siguiente script:
Código:
<?
$mysql_host = 'localhost';
$mysql_username = 'joseluis';
$mysql_password = 'joseluis';
$mysql_dbName = 'joseluis';
$dbh = mysql_connect("$mysql_host", "$mysql_username", "$mysql_password");
mysql_select_db("$mysql_dbName");
$vector_campos=array('dni','nombre','universidad');
$tabla='alumnosunimad';
//function tomar_datos_archivo($nombre_archivo,$vector_campos,$tabla){
$formatocampos=implode(',',$vector_campos);
$strquery="insert into $tabla ($formatocampos) values";
$vec_uno=file($_FILES['archivo']['archivo']);
for($i=0;$i<count($vec_uno);$i++){
$formatovalores='';
$miarray=explode(';',$vec_uno[$i]);
for($j=0;$j<(count($vector_campos));$j++){
$formatovalores.=mysql_real_escape_string(trim($miarray[$j]))."','";
}
$formatovalores=substr($formatovalores,0,(strlen($formatovalores)-3));
$strquery.=" ('$formatovalores') ,";
}
$strquery=substr($strquery,0,(strlen($strquery)-1)).';';
mysql_query($strquery);
//}
mysql_close($dbh);
?>
<form action="<?php echo $PHP_SELF;?>" method="post" name="miformu">
<input name"archivo" type="file">
<input type="submit" name="subir" value="Subir" class="Button" />
</form>
En teoría, ésto tendría que coger un archivo csv que examine el usuario e insertar el contenido de dicho archivo en la base de datos. Lo he probado y lo que hace es almacenar el valor 0 (cero) en el primer campo de la tabla.
Yo creo que lo que está fallando es que el fichero no está bien abierto o algo así, en resumen, creo que el problema está al leer el fichero, ¿qué opinais vosotros?
Muchas gracias por la ayuda!!