Crée un text en php et allé a la ligne
Résolu/Fermé
fooximane
fooximane
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
fooximane
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
A voir également:
- Crée un text en php et allé a la ligne
- Crée un text en php et allé a la ligne ✓ - Forum - PHP
- Créer un texte avec des mots imposés ✓ - Forum - Webmaster
- Générer un texte automatiquement selon des exemples - Forum - Word
- Afficher du texte en php - Articles
- Créer une fonction en php - Articles
6 réponses
Rctll
14 juin 2010 à 16:32
- Messages postés
- 499
- Date d'inscription
- dimanche 11 mai 2008
- Statut
- Membre
- Dernière intervention
- 30 juin 2010
14 juin 2010 à 16:32
ajouter fseek($monfichier,0,SEEK_END); avant le fputs te convient-il?
Leviathan49
Modifié par Leviathan49 le 14/06/2010 à 16:37
- Messages postés
- 257
- Date d'inscription
- jeudi 10 juin 2010
- Statut
- Membre
- Dernière intervention
- 22 juillet 2011
Modifié par Leviathan49 le 14/06/2010 à 16:37
Si tu veux juste mettre $_POST['nom'] à la fin du fichier il suffit de faire
$monfichier = fopen('teste.txt', 'a');
fputs($monfichier, $_POST['nom']);
$monfichier = fopen('teste.txt', 'a');
fputs($monfichier, $_POST['nom']);
fooximane
14 juin 2010 à 16:37
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
14 juin 2010 à 16:37
je vais tester tout de suite, Leviathan49 le problème c'est que je ne veut pas que se soit a la fin du texte il y à des ligne après environ 15 lign ( programmation bat ) donc je vise la fin de la troisième ligne pour compléter mon bat
Rctll
14 juin 2010 à 16:40
- Messages postés
- 499
- Date d'inscription
- dimanche 11 mai 2008
- Statut
- Membre
- Dernière intervention
- 30 juin 2010
14 juin 2010 à 16:40
auquel cas ma solution ne marchera pas non plus. en fait je n'arrive pas à voir ou est le problème?
s'il s'agit de creer un retour à la ligne, le couple \r\n suffira.
s'il s'agit de creer un retour à la ligne, le couple \r\n suffira.
fooximane
14 juin 2010 à 16:51
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
14 juin 2010 à 16:51
non justement je ne veut pas allé a la ligne mais complété la ligne justement
imaginon
ligne 1 = un petit mouton rouge
ligne 2 = un petit mouton bleue
ligne 3 = un petit mouton (la je v mettre mon texte )
ligne 4 = un petit mouton orange
....
tu voi se que je v dire si je vai a la ligne sa remplasera la ligne 4 , et je ne pe pas crer la lign 3
complète car c'est du langage bat, donc il faut que ce langage soi déjà écrie
imaginon
ligne 1 = un petit mouton rouge
ligne 2 = un petit mouton bleue
ligne 3 = un petit mouton (la je v mettre mon texte )
ligne 4 = un petit mouton orange
....
tu voi se que je v dire si je vai a la ligne sa remplasera la ligne 4 , et je ne pe pas crer la lign 3
complète car c'est du langage bat, donc il faut que ce langage soi déjà écrie
fooximane
14 juin 2010 à 16:40
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
14 juin 2010 à 16:40
fseek($monfichier,0,SEEK_END); a quoi correspond le 0 ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Leviathan49
14 juin 2010 à 16:50
- Messages postés
- 257
- Date d'inscription
- jeudi 10 juin 2010
- Statut
- Membre
- Dernière intervention
- 22 juillet 2011
14 juin 2010 à 16:50
Ah, une ligne précise... Je propose alors :
$monfichier = fopen('t.txt', 'r+');
$ligne = fgets($monfichier);
$ligne = fgets($monfichier);
$ligne = fgets($monfichier);
$var = trim($ligne); // recupèrer la troisième ligne sans saut de ligne
rewind($monfichier); // reviens au début du fichier
$ligne = fgets($monfichier);
$ligne = fgets($monfichier);
fputs($monfichier, $var."test");
fclose($monfichier);
$monfichier = fopen('t.txt', 'r+');
$ligne = fgets($monfichier);
$ligne = fgets($monfichier);
$ligne = fgets($monfichier);
$var = trim($ligne); // recupèrer la troisième ligne sans saut de ligne
rewind($monfichier); // reviens au début du fichier
$ligne = fgets($monfichier);
$ligne = fgets($monfichier);
fputs($monfichier, $var."test");
fclose($monfichier);
fooximane
14 juin 2010 à 17:01
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
14 juin 2010 à 17:01
oui, mais sa supprime le début de la ligne en gros je veut que mon curseur soi a la fin de la troisième ligne
Leviathan49
Modifié par Leviathan49 le 14/06/2010 à 17:09
- Messages postés
- 257
- Date d'inscription
- jeudi 10 juin 2010
- Statut
- Membre
- Dernière intervention
- 22 juillet 2011
Modifié par Leviathan49 le 14/06/2010 à 17:09
Oui, après reflexion cette solution risque de ne pas marcher et d'ecraser les lignes du dessous...
Solution de facilité :
J'ai testé et ça met bien test a la fin de la troisième ligne sans supprimer le reste.
Solution de facilité :
$monfichier =file('t.txt'); $monfichier2 = fopen('t2.txt', 'w'); $i=0; foreach($monfichier as $line) { $i++; if($i==3) { fputs($monfichier2,trim($line)."test\n"); // trim pour virer le retour à la ligne } else { fputs($monfichier2,$line); } } fclose($monfichier2); rename('t2.txt','t.txt');
J'ai testé et ça met bien test a la fin de la troisième ligne sans supprimer le reste.
fooximane
14 juin 2010 à 17:11
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
14 juin 2010 à 17:11
Je test sa, et te donne mes résulta :)
fooximane
14 juin 2010 à 17:21
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
14 juin 2010 à 17:21
c'est une avancé, mais sa me mais le mot a la fin de toute les ligne en grop j'ai 15 ligne je veut y mettre sur la fin mais de la troisième ligne
Leviathan49
Modifié par Leviathan49 le 14/06/2010 à 17:27
- Messages postés
- 257
- Date d'inscription
- jeudi 10 juin 2010
- Statut
- Membre
- Dernière intervention
- 22 juillet 2011
Modifié par Leviathan49 le 14/06/2010 à 17:27
Hum, bizarre, je teste si le numéro de la ligne (stocké dans $i) est bien de 3. C'est étrange...
Edit: j'ai beau retester je vois pas comment ça peut te rajouter ça à chaque ligne malgré le if :/
Chez moi c'est donc bien uniquement la troisième ligne qui est modifié.
Edit: j'ai beau retester je vois pas comment ça peut te rajouter ça à chaque ligne malgré le if :/
Chez moi c'est donc bien uniquement la troisième ligne qui est modifié.
fooximane
14 juin 2010 à 17:27
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
14 juin 2010 à 17:27
pas a chaque ligne mais a la fin du texte :)
fooximane
14 juin 2010 à 17:27
- Messages postés
- 26
- Date d'inscription
- lundi 14 juin 2010
- Statut
- Membre
- Dernière intervention
- 15 juin 2010
14 juin 2010 à 17:27
$monfichier = file('teste.txt');
$monfichier2 = fopen('t2.txt', 'w');
$i=0;
foreach($monfichier as $line)
{
$i++;
if($i==3)
{
fputs($monfichier2,trim($line)."test\n"); // trim pour virer le retour à la ligne
}
else
{
fputs($monfichier2,$line);
}
}
fputs($monfichier2, ($_POST['nom']));
fclose($monfichier2);
rename('t2.txt','teste.txt');
$monfichier2 = fopen('t2.txt', 'w');
$i=0;
foreach($monfichier as $line)
{
$i++;
if($i==3)
{
fputs($monfichier2,trim($line)."test\n"); // trim pour virer le retour à la ligne
}
else
{
fputs($monfichier2,$line);
}
}
fputs($monfichier2, ($_POST['nom']));
fclose($monfichier2);
rename('t2.txt','teste.txt');