Hola, puedes probar con este codigo:
Este se llama el archivo subir_txt.php
Código PHP:
<?php
if(isset($HTTP_POST_FILES['FileTXT']) && isset($_POST['Submit']) )
{ $archivo = $HTTP_POST_FILES['FileTXT'];
$extension = explode(".",$HTTP_POST_FILES['FileTXT']['name']);
$num = count($extension)-1;
if($extension[$num] == "txt")
{ if($HTTP_POST_FILES['FileTXT']['size'] < 30000) // 30Kb
{ if(! move_uploaded_file($HTTP_POST_FILES['FileTXT']['tmp_name'],"tmp/".$HTTP_POST_FILES['FileTXT']['name']) )
{ echo "error al mover el archivo al servidor"; }
else
{ ini_set("max_execution_time",0);
@$fp = fopen("tmp/".$HTTP_POST_FILES['FileTXT']['name'], 'r');
if (!$fp)
{ echo "error de apertura de archivo";
exit;
}
$tempver= fgetcsv($fp,900,'|');
if(count($tempver)==7) // de 7 campos en el tabla
{ fclose($fp);
@$fp = fopen("archivos/".$HTTP_POST_FILES['FileTXT']['name'], 'r');
include("a_base_de_datos.php");
while (!feof($fp))
{ $order= fgetcsv($fp,900,',');
//y volvemos a insertar la nueva data.
//lo ingresamo con calma
/// Aca verificamos si por ejemplo en este caso el campo campo1 tiene que tener un dato y no puede esta vacio, sino lo paramos.
if(!empty($order[0]))
{ $con = "insert into tabla_del_txt (campo1,campo2,campo3,campo4,campo5,campo6,campo7) values(";
$con .= "'".$order[0]."', ";
$con .= "'".$order[1]."', ";
$con .= "'".$order[2]."', ";
$con .= "'".$order[3]."', ";
$con .= "'".$order[4]."', ";
$con .= "'".$order[5]."', ";
$con .= "'".$order[6]."') ";
mysql_query($con);
echo "Subido!!!!!";
}
}
}
else
echo "Faltan Campos en el archivo. Los campos son incompletos.";
fclose($fp);
ini_restore ("max_execution_time");
unlink("tmp/".$HTTP_POST_FILES['FileTXT']['name']);
echo "Archivo procesado";
}
}
else
echo "el archivo supera los 30kb";
}
else
echo "el formato de archivo no es valido, solo .txt";
}
?>
<br>
<br>
<br>
<br>
<br>
<center>
<form action="subir_txt.php" method="post" name="form" enctype="multipart/form-data">
<input type="file" name="FileTXT">
<input type="submit" name="Submit" value=" Subir Archivo TXT ">
</form>
</center>
Esto es para surbir datos de una tabla de 7 campos, desde un archivo con datos separados con el simbolo "|",
.
Espero que te sirva, sino pasas la voz por aqui,
.
Saludos
Gildus