Comment creer un fichier texte ?

Résolu
robapt Messages postés 114 Date d'inscription mardi 6 juillet 2004 Statut Membre Dernière intervention 4 décembre 2009 - 14 août 2007 à 23:58
pysco68 Messages postés 681 Date d'inscription samedi 26 février 2005 Statut Membre Dernière intervention 21 août 2014 - 15 août 2007 à 12:23
Bonsoir à tous, je voudrais savoir comment il serais possible de creer un fichier texte à partir de ce formulaire qaund le visiteur clique sur envoyer pour enregistrer ses réponse dans un fichier en .txt ?
Voici mon code :

<label class="nom">Votre nom:</label>

<label class="courriel">Votre email:</label>

<label class="message">Description détaillé de votre site :</label>

<textarea rows="5" cols="38" class="message" name="message"></textarea>

<center>

</form>

Voila!
merci à tous ^^

8 réponses

cs_yann68moh Messages postés 12 Date d'inscription jeudi 16 mars 2006 Statut Membre Dernière intervention 25 mars 2012
15 août 2007 à 11:24
Quand je dit sécurisé, je veut dire que personne sans authorisation ne peut voir le contenu, içi ton contenu est toujours enregistré sur serveur et donc dispo sur internet par tout le monde et par tout les robots.

Evite : <meta http-equiv="refresh" content="1;url=demande.php">

Préfére :
header("location: demande.php");

Plus lisible !

Pour l'envoi des données directement sur un mail => fonction mail()

$msg .= "Message :\t$text\n\n";
$recipient = "info@-_-_-_-.fr";
$subject = "Bjr";
$mailheaders = "From: <Moi !> \n";
$mailheaders .= "Reply-To: reponse@-_-_-_-.fr\n\n";
mail($recipient, $subject, $msg, $mailheaders);
3
pysco68 Messages postés 681 Date d'inscription samedi 26 février 2005 Statut Membre Dernière intervention 21 août 2014 8
15 août 2007 à 12:01
pour eviter le problèque dont yann68moh parlait, le plus simple est d'enregistrer le fichier dnas un odssier protèger par .htaccess.....
sinon tu peux aussi créer des fichiers php et tu mets un <?php die("Pas d'acces directe!!!"); ?> en première ligne.... quoi que cette dernière slution n'est pas forcément idéale ;)

@+

<hr size="2" width="100%" />Developpement Web Yannic GraphiX | Mon CMS yArt et sa démo
<hr size="2" width="10" />
3
vilhjalms Messages postés 591 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 16 juillet 2009 2
15 août 2007 à 00:21
Saell og blesuð

voir fopen() fputs() etc sur http://www.php.net

Vilhjálms
Sigurðsdóttir aka Frëyjá
0
cs_yann68moh Messages postés 12 Date d'inscription jeudi 16 mars 2006 Statut Membre Dernière intervention 25 mars 2012
15 août 2007 à 10:52
Le pb c'est que ton script n'est pas sécurisé, n'importe quel mec peut savoir où sera enregistrer ton txt sur le serveur et pourras s'en servir à ton insu.

Essaye l'envoi par mail ou l'enregistrement dans une BDD

@+++
0

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

Posez votre question
robapt Messages postés 114 Date d'inscription mardi 6 juillet 2004 Statut Membre Dernière intervention 4 décembre 2009
15 août 2007 à 10:57
OK merci !

J'ai trouvé un autre script que j'ai modifié et qui je pense est sécurisé ! 
Qu'en pensez-vous ?

 <?php
function Smiley ($demande)
 {
 }
if (isset($_GET['action'])) {
if ($_GET['action']= ="enregister") {
?>

<meta http-equiv="refresh" content="1;url=demande.php">

<?php
if ($_POST['pseudo']=="" OR $_POST['demande']=="" OR $_POST['email']=="") {
?>

<script language="Javascript">alert("Le formulaire n'est pas bien rempli!")</script>
<meta http-equiv="refresh" content="0;url=demande.php?action=poster">

<?php
}
else
{
$fp = fopen ("demande.txt", "a+");
$heure = date("H");
$minute = date("i");
$jour = date("d");
$mois = date("m");
$annee = date("y");
$date = 'Le '.$jour.'/'.$mois.'/'.$annee.' à '.$heure.'H'.$minute;
$date = $date;
$email = $_POST['email'];
$email = htmlentities($email);
$email = $email;
$pseudo = $_POST['pseudo'];
$pseudo = htmlentities($pseudo);
$pseudo = addslashes($pseudo);
$pseudo = $pseudo;
$demande = $_POST['demande'];
$demande = htmlentities($demande);
$demande = addslashes($demande);
$demande = $demande;
$texte = $date.'
Nom : '.$pseudo.'
Adresse e-mail : '.$email.'
Description du site : '.$demande.'
---------------------------------------------------------------------------
---------------------------------------------------------------------------
';
fputs ($fp, $texte);
fclose ($fp);
}
}
 elseif ($_GET['action']=="poster") {
 ?>




<form action="demande.php?action=enregister" method="post">

Votre nom :

Votre Email :

Description détaillé de votre site :<textarea name ="demande"></textarea>






<?php
}
}
else {
?>





 <?php
 $fp = fopen ("demande.txt", "a+");
 $donnees=fgets ($fp, 4096);
 $donnees=stripslashes($donnees);
 $donnees = Smiley($donnees);
 echo $donnees;
 fclose ($fp);
 ?>





<?php
echo '[demande.php?action=poster ]';
}
?>



Merci à tous !
0
robapt Messages postés 114 Date d'inscription mardi 6 juillet 2004 Statut Membre Dernière intervention 4 décembre 2009
15 août 2007 à 12:09
Merci à tous les 2 pour vos informations !
Comme vous pouvez le voir, je débute en php donc pour moi, c'est dur tout sa! lol
Aller, bon courage pour la suite (^_^)'

Tchou
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
15 août 2007 à 12:18
Salut

psyco68, creer un fichier php qui contient :

<?php

$var=....

?>

c'est aussi simple, et ca se lance avec un simple include

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
0
pysco68 Messages postés 681 Date d'inscription samedi 26 février 2005 Statut Membre Dernière intervention 21 août 2014 8
15 août 2007 à 12:23
effectivement c'est aussi une variante :) sinon on peut encore réfléchire à faire le tout directement dans un fichier XML, ou encore (mieux?) dans une BDD....

<hr size="2" width="100%" />Developpement Web Yannic GraphiX | Mon CMS yArt et sa démo
<hr size="2" width="10" />
0
Rejoignez-nous