Ecriture fichier php

Pioupiou -  
 Liloune -
bonjour je cherche a écrire dans un fichier une valeur saisie grace a une fenetre html . le but est de crée des fichier en local et non sur internet pour cela j'ai réalisé 2 fichier:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>

<FORM ACTION="fichier-02.php">
Saisie : <INPUT NAME="ligne">
<INPUT TYPE="submit">
</FORM>
</body>
</html>





et
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php

$f = 'exemple.txt';
$text = "ma chaine de caractères";
$handle = fopen("$f","r");

// regarde si le fichier est accessible en écriture
if (is_writable($f)) {
// Ecriture
if (fwrite($handle, $text) === FALSE) {
echo 'Impossible d\'écrire dans le fichier '.$f.'';
exit;
}

echo 'Ecriture terminé';

fclose($handle);

}
else {
echo 'Impossible d\'écrire dans le fichier '.$f.'';
}

?>
</body>
</html>


je n'arrive pas a écrie mon fichier d ou viens l'erreur .
et en plus quand je lance omn fichier avec firefox il me propose d'executé le php avec un prog par défaut(dreamweaver) mais refuse de l'executer avec ie ou firefox
A voir également:

6 réponses

CH4NCE Messages postés 620 Date d'inscription   Statut Membre Dernière intervention   728
 
j'ai appelé ton premier fichier form.php :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>formulaire</title>
</head>
<body>
<form action="test.php" method="post">
  Saisie : <input name="ligne" type="text">
  <input type="submit" value="valider">
</form>
</body>
</html>


puis modifié test.php :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php
//on prend le resultat du formulaire
$ma_chaine=$_POST['ligne'];
//On ecrit ma_chaine dans le fichier exemple.txt
$f = 'exemple.txt';
$text = $ma_chaine;
$handle = fopen("$f","a+");

// regarde si le fichier est accessible en écriture
if (is_writable($f)) {
// Ecriture
if (fwrite($handle, $text) === FALSE) {
echo 'Impossible d\'écrire dans le fichier '.$f;
exit;
}

echo 'Ecriture terminé';

fclose($handle);

}
else {
echo 'Impossible d\'écrire dans le fichier '.$f;
}
echo '<br /> Contenu du fichier exemple.txt : <br />';
include('exemple.txt');
?>
</body>
</html>


Voilà, tu n'a plus qu'a taper localhost/form.php dans la barre d'adresse de ton navigateur
1
Liloune
 
Bonjour,
je vous écris car j'utilise déjà ce système de saisie pour mon site et je suis à la recherche d'une astuce.

Voilà j'aimerais que lorsque je saisie les infos dans mon formulaire, elles soient saisies directement dans 2 fichier txt. Est-ce possible ?
J'ai pensé à faire un envoie du formulaire sur 2 pages, mais je ne trouve pas comment.

Mon système actuel est le suivant :
- page de formulaire qui envoie les infos "create.html"
- page qui reçoit et envoie les infos "create.php"
- page qui enregistre le texte saisie dans le formulaire "news.txt"

Ça fonctionne très bien, mais en fait j'aimerais avec une page news.txt et news2.txt, car le codage php de "create.php" ajoute un style à l'écriture, du coup j'ai créé une seconde page "create2.php", qui va vers news2.txt.

Vous allez me dire, mais à quoi va te servir ton 2è fichier txt ?
En fait je veux faire apparaître les 50 premiers caractère du fichier sur une autre page mais sans mise en forme css de la page news.txt.

Merci d'avance si vous avez une idée.
0
CH4NCE Messages postés 620 Date d'inscription   Statut Membre Dernière intervention   728
 
Avant de regarder ton code il me semble judicieux de te rappeler que php marche côté serveur et n'est donc pas interprété par un navigateur.
Vu que tu travail avec XP le plus simple est que tu utilises movamp :
http://www.movamp.net/
ou zazou mini web server :
http://www.xgarreau.org/zazouminiwebserver/zmws.php/conffileparser.php
qui sont tous deux des serveurs php5, apache2 et qui ne s'installent pas mais s'executent simplement là ou ils sont (sur une clé usb par exemple).
Ma préférence va à zazou qui peut etre utilisé en production et dont la documentation est foisonnante.
A+ ;)
0
Pioupiou
 
ok merci mais je narrive toujours pas a executé ces fichier ou mes fichiers sont mal placé peut etre qu il fo definir des choses precises pour lancer ces fichier
0
CH4NCE Messages postés 620 Date d'inscription   Statut Membre Dernière intervention   728
 
nop ça marche.
Remplaces
$handle = fopen("$f","r"); 

par
$handle = fopen("$f","a+"); 

a+ crée le fichier s'il n'existe pas
A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
CH4NCE Messages postés 620 Date d'inscription   Statut Membre Dernière intervention   728
 
Quand au fait de l'executer j'ai collé ton code dans un fichier test.php à la racine de mon site puis j'ai tapé localhost/test.php dans mon navigateur et hop.
;)
0
Pioupiou
 
ok mrci beaucoup mais comment faire maintenant pour que ce que je saisise dans ma premiére page soit ce que j'écrive dansmon fichier texte?
0