|
|
|
|
Bonjour,
je voudrais savoir comment un fichier text en PHP qui est divisé en champs, donc je ve lire les champs pour remplir ma base de donnée(MySQL). notant que j'ai pa besoin de tous les champs , et il y a des espace entre les champs dans le fichier.
mon fichier txt est comme ça:
CTN_CDR 200051SSC 024877444 20051120180208 054187785 BMDS7A WTA161D 00003600 00000475
CTN_CDR 200051SSC 021222927 20051120180323 071294410 AINN7A OTA161D 00003601 00000475
CTN_CDR 200051SSC 029348197 20051120180601 077778061 GHARD7A OTA161D 00003583 00000473
CTN_CDR 200051SSC 029871689 20051120180817 079070147 GHARD7A OTA161D 00003601 00000475
CTN_CDR 200051SSC 029350264 20051120181002 077267367 GHARD7A OTA161D 00003601 00000475
CTN_CDR 200051SSC 029712520 20051120181111 050787837 OURGL7A WTA161D 00003152 00000416
Configuration: Windows XP Internet Explorer 7.0
tu lis ton fichier text par la fonction file() de php pas besoin de fopen et fclose
le resultat est mis dans un array ligne par ligne
$array_fichier=file(ton_fichier.txt);
//tu fais ta connexion à la base
//puis ensuite tu explore cet array ligne par ligne
for($i=1;$i<=sizeof($array_fichier);$i++0){
array_champs=explode(" ",$$array_fichier); //on explode par rapport à l'espace tu obtiens un array ou les champs sont séparés
$sql="INSERT INTO ta_table VALUES('".array_champs[0]."','".array_champs[1]."' etc........);
mysql_query($sql);
}
|
<?php
|
ça ne marche pas ne veut rien dire !
<?php
$array_fichier = file("ton_fichier_txt.txt"); //attention mettre le chemin relatif de ton fichier par rapport a ce script php
for($i=0; $i<sizeof($array_fichier); $i++){
$array_champs = preg_split("/[\s]+/", $array_fichier[$i]);
//verification
echo $array_champs[0]."<br>";
echo $array_champs[1]."<br>";
echo $array_champs[2]."<br>";
echo $array_champs[3]."<br>";
echo $array_champs[4]."<br>";
echo $array_champs[5]."<br>";
echo $array_champs[6]."<br>";
echo $array_champs[7]."<br>";
echo $array_champs[8]."<br><br><br>";
//comme te l'a dit jeremieca il te suffit de mettre tes INSERT dans ta table à la place des echo
}
?> |
Bonjour
|
<form method='post' action='lecture.php' encrypte='multipart/form-data'>
<form method="post" action="lecture.php">
<select name="fichier" >
<?php
$rep_fichiers="fichiers_a_traiter"; //tu changes si tu n'as pas nommé ainsi ton dossier
//generation de la liste des fichiers
if ($handle = opendir($rep_fichiers)) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") { // on ne tient pas compte des fichiers . et ..
echo '<option value="'.$file.'">'.$file.'</option>';
}
}
closedir($handle);
}
?>
</select>
<input type='submit' name="envoyer" value='Envoyer'>
</form>
et le script lecture.php:
<?php
if(isset($_POST['envoyer'])) {
$fichier=$_POST['fichier']; //recupération du choix dans la liste
$array_fichier=file($fichier);
//etc....la tu fais ton traitement vers la BDD
}
?> |
Merci bcp ça marché ,
|