1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
if(move_uploaded_file($_FILES['fichier']['tmp_name'], $dossier.$fichier)) {
// le fichier doit avoir ete uploade. on le lit, le parse afin de verifier la validite de ce dernier
// si OK, alors insertion du nom ds la DB
// si pas OK, pas d'insertion et affichage message d'erreur, effacement du fichier nvellement cree
// renomme le fichier uploade (l'original)
rename($dossier.$fichier, $dossier."ori_".$fichier);
// on cree un fichier vide
$cop_file= "pgn/parties_commentees/membres/".$_SESSION['login']."/".$fichier;
// on ouvre les 2 fichiers l'original (qui a ete renomme) et la copie (vide pour le moment)
$ori_file_opened= fopen($dossier."ori_".$fichier, "r");
$cop_file_opened= fopen($cop_file, "w");
// tableau contenant le fichier d'origine
$ori_tab= file($dossier."ori_".$fichier);
// les compteurs
$compteur_TAG= 0;
for($i= 0; $i< count($ori_tab); $i++) {
// compte le nbre de caracteres de chaque ligne (le retour chariot est compte comme un caractere)
$compteur_caracteres= strlen($ori_tab[$i]);
//--------------------------------------------------------------------------------------------------------------------------------
// permet de trouver toutes les lignes debutant par un crochet ET DT L'AVANT DERNIER caractere est un ], autrement dit un TAG et dernier caractere= nouvelle ligne
if(substr($ori_tab[$i], 0, 1)== "[" && substr($ori_tab[$i], ($compteur_caracteres- 2), 1)== "]" && substr($ori_tab[$i], ($compteur_caracteres- 1), 1)== "\n") {
$compteur_TAG++;
// detruire les guillemets et remplacer les nouvelle ligne par des balises <br>
for($j= 0; $j<= $compteur_caracteres; $j++) {
if($ori_tab[$i][$j]== '"') {
$ori_tab[$i]= str_replace("\"", "", $ori_tab[$i]); // les guillemets
$ori_tab[$i]= trim($ori_tab[$i]); // enlever espaces en debut et fin de chaines
$ori_tab[$i].= "<br>"; // ajouter la balise <br> en fin de chaine
}
}
// ecrire ds le fichier
fwrite($cop_file_opened, $ori_tab[$i]);
}
}
} |
Partager