Ficher texte [Résolu]

Signaler
Messages postés
50
Date d'inscription
dimanche 24 avril 2005
Statut
Membre
Dernière intervention
17 février 2006
-
Messages postés
50
Date d'inscription
dimanche 24 avril 2005
Statut
Membre
Dernière intervention
17 février 2006
-
Bonjour, si j'ai deux champs qui se nomme text1 et text2, comment je fais pour enregistrer les données dans un fichier texte au lieu de ma base de données ?

23 réponses

Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
Mais si je me base sur le code que tu me présente en disant "ça marche pas". Ben y'a des erreurs, corrigées en rouge :









<?php
$champ[1] = isset($_POST['champ1']) ? $_POST['champ1'] : die("pas de champs 1 ");
$champ[2] = isset($_POST['champ2']) ? $_POST['champ2'] : die("pas de champs 2 ");


$f = fopen('fichier.txt', 'at') or die();
fputs($f, $champ[1] . ';' . $champ[2] . "\r\n");
fclose($f);
?>



5 en 5 lignes... 100%!
Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
Salut,

je te conseille de lire des tutoriaux plutôt que de demander ici, tu apprendras plus vite.

cherche du côté de la fonction fopen ( ); sur http://fr2.php.net/manual/fr/

par exemple

à+
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
Salut,



C'est pas une superbe idée...

Les bases de donées sont faites pour ça!

Mais si tu y tiens...



renseigne toi sur les fonctions :

fopen, fwrite, fclose, ...

Et peut-être

parse_ini_file qui lit les fichiers de type INI, mais qui n'a pas l'équivalent... pour écrire dedans!!!
Messages postés
50
Date d'inscription
dimanche 24 avril 2005
Statut
Membre
Dernière intervention
17 février 2006

Je sias que les base de données sont mieux, mais avec les fichiers texte, je n'aurai qu'à faire un petit include pour que ce que les gens ont marqué s'affiche dans une autre page.
Messages postés
354
Date d'inscription
dimanche 3 juin 2001
Statut
Membre
Dernière intervention
11 mars 2013

tu fais simplement un truc du style:

<?

$f = fopen("fichier.txt","a");

fputs($f,$_REQUEST['champ1]' . ";" . $_REQUEST['champ2'] . "\r\n");

fclose($f);

?>

et là, si j me suis pas complètement gouré, tu as un fichier au
format csv avec les réponses entrées par tes visiteurs. Bien sur, il
faut encore vérifier que les champs ne sont pas vides avant de faire
ça, mais je te laisse faire ça tt seul!!!
Messages postés
1267
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
29 juin 2010
1
Lu ^^

<?php

$champ[1] = $_POST['champ1']; // Si c'est d'un formulaire _POST

$champ[1] = $_POST['champ1'];

// $champ[1] = $_GET['champ1']; // Sinon c'est de l'url _GET

// $champ[1] = $_GET['champ1'];



$f = fopen('fichier.txt', 'a');

fputs($f, $champ[1]' . ';' . $champ[2] . "\r\n");

fclose($f);

?>
Et puis <strike>$_REQUEST</strike> est déprécié !
<hr>Si ma reponse te convient, merci de l'accepter !
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,



en quoi les bases de données sont-elles mieux ? pour faire un système
de cache par exemple il vaut mieux utiliser un fichier texte ;-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
La vitesse d'acces au données pertinantes... Paske si tu as 15
utilisateurs... tu fais quoi? 15 fichiers ou 15 lignes dans le même
fichiers



Et pourquoi s'embéter ?


Si c'est pour stocker queques lignes de texte, juste pour les
réafficher plus tard... Utilise les variables de sessions. (Ce qui
reviend exactement au même que d'accéder un fichier!!!?!!! à moins que tu n'ai modifié les méthodes de stockage-lecture des variable de sessions)
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Quand t'as pas d'opérations complexes à effectuer (juste une lecture) l'accès à un fichier est plus rapide.



Ensuite pour un cache d'une page web on utilise pas les variables de session faut que ce cache serve à tous les utilisateurs ;-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
oki
Messages postés
50
Date d'inscription
dimanche 24 avril 2005
Statut
Membre
Dernière intervention
17 février 2006

Ça marche pas sa :

<?php
$champ[1] = $_POST['champ1']; // Si c'est d'un formulaire _POST

$champ[1] = $_POST['champ1'];
// $champ[1] = $_GET['champ1']; // Sinon c'est de l'url _GET
// $champ[1] = $_GET['champ1'];

$f = fopen('fichier.txt', 'a');
fputs($f, $champ[1]' . ';' . $champ[2] . "\r\n");
fclose($f);
?>
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
As-tu changé le nom des champs : champ1, champ1 (tiens deux fois le même !?!) ?

As-tu testé l'ouverture du fichier ?

As-tu rmarqué que $champ[2] n'est pas défini ?

As-tu un message d'erreur ?

As-tu lu un ou deux tutoriaux avant de commencer PHP ?

As-tu déjà programmé ? Et si oui, dans quel langage ?
Messages postés
50
Date d'inscription
dimanche 24 avril 2005
Statut
Membre
Dernière intervention
17 février 2006

Bon regarde, j'ai changé champ 1 et 2 et les ai définie, oui j'ai un message d'erreur, et j'ai un systeme d'hébergment sur mon site. Et pour le moment, a la place du fichier texte, j'ai une base de donné mysql qui fonctionne a merveille.
Messages postés
50
Date d'inscription
dimanche 24 avril 2005
Statut
Membre
Dernière intervention
17 février 2006

Ça sa marche ! merci !
Messages postés
1267
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
29 juin 2010
1
^^
Rho, qu'avais-je foutus ? Tel est la question débile que je me pose ...


<HR>
Si ma reponse te convient, merci de l'accepter !
</F< body>
Messages postés
50
Date d'inscription
dimanche 24 avril 2005
Statut
Membre
Dernière intervention
17 février 2006

Mais il y a quelques choses que j'aimerais savoir de plus. Suposon que je tape 600 caractères, et bien au lieu de faire exemple 7 ligne, il n'y en a qu'une et cela déforme tout mon site, il n'y aurais pas une solution?
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
wordwrap()

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
Messages postés
50
Date d'inscription
dimanche 24 avril 2005
Statut
Membre
Dernière intervention
17 février 2006

Ok je le met ou ?
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
PHP: Hypertext Preprocessor

et un peu de jugeote...



Laisse toi au moins 1 heure de tests avant de crier "au secours"
Messages postés
50
Date d'inscription
dimanche 24 avril 2005
Statut
Membre
Dernière intervention
17 février 2006

oui bon j'ai compris ça,
<?php
$text = "Portez ce vieux whisky au juge blond qui fume."
;
$newtext = wordwrap( $text, 20
);

echo "$newtext\n"
;
?>

Je suis pas stupide mais moi, mon problème, c'est que au lieu de: Portez ce vieux whisky au juge blond qui fume. Mon texte à moi est une chaine de variables(ceux afficher plus haute dans la réponse acceptée). C'est ça que j'arrive pas a mettre.