traitement d'un fichier texte a tabulation [PHP] - Programmation
Marsh Posté le 05-03-2001 à 00:19:28
utilise les fonctions explode et fgets ca sera beaucoup plus simple et beauoup plus propre
Marsh Posté le 05-03-2001 à 00:31:49
Je n'avais pas lu correctement pource que tu veux faire split et explode sont quasi équivalentes.
Nota: pOur spécifier le caractere tabulation utilise comme ca tu seras tranquille Chr(9) .
Marsh Posté le 05-03-2001 à 00:35:45
c bon ca marche maintenant avec fgets et explode
le php c bien paske ttes les fonctions qu'il faut existent, ms y en a TROP !
et pkoi chr(9) plutot que \t ?
--Message édité par Lolo2k--
Marsh Posté le 05-03-2001 à 00:51:13
[citation]et pkoi chr(9) plutot que \t ?
[/citation]
Parce que je ferais bien d'aller me coucher ... oui en fait ici il n'y a pas grand intéret a utiliser chr(9) plutot que \t.
Marsh Posté le 05-03-2001 à 00:12:49
en entré g un fichier texte a tabulation (venant d'excel) comme ceci :
login1 mdp1
login2 mdp2
etc...
et je veux insérer chaque ligne ds un table mysql (login, mdp)
pour ca je comptais faire 2 boucles imbriquées, ds la 1ere je decoupe chaque ligne grace au caractere '\n', ds la 2eme je decoupe au niveau des tabulations '\t\
et bah ca marche po mon code , j'dois m'y prendre comme un manche ... (g aussi essayer avec des "split" ms g pas du faire ce qui faut)
$donnees_eleves = fread(fopen($fichier_eleves, "r" ), filesize($fichier_eleves));
$donnees_eleves = addslashes($donnees_eleves);
$donnees_eleves = trim($donnees_eleves);
//
// Decoupage de la feuille excel $donnees_eleves par ligne
//
for ($i=0 ; $i<strlen($donnees_eleves)-1 ; $i++) {
if (strcmp(substr($donnees_eleves, $i, 2), '\n')) {
$eleve = substr ($donnees_eleves, 0, $i);
$donnees_eleves = substr ($donnees_eleves, $i+2);
$i = 0;
//
// Decoupage de la ligne $eleve par tabulation
//
$data = array();
for ($j=0 ; $j<strlen($eleve)-1 ; $j++) {
if (strcmp (substr ($eleve, $j, 2), '\t')) {
$data[] = substr ($eleve, 0, $j);
$eleve = substr ($eleve, $j+2);
}
}
//
// On insère la ligne dans la table élèves
//
$query = "INSERT INTO eleves (nom, prenom, moy1, moy2) VALUES (\"";
$query .= $data[0];
$query .= "\", \"";
$query .= $data[1];
$query .= "\", ";
$query .= $data[2];
$query .= ", ";
$query .= $data[3];
$query .= " )";
}
}
merci pr votre aide