Formulaire et fichier txt [Résolu]

vita83 20 Messages postés vendredi 28 avril 2006Date d'inscription 13 mars 2013 Dernière intervention - 7 janv. 2009 à 00:24 - Dernière réponse : vita83 20 Messages postés vendredi 28 avril 2006Date d'inscription 13 mars 2013 Dernière intervention
- 7 janv. 2009 à 11:10
Bonjour et bonne années a tous et toutes.

Je voudrai integrer un formulaire de contact a mon site qui permettrai a mes visiteurs de me laisser leur nom,message et email et qui integrerai directement la date et l'heure.
Je possede un serveur dédié ubuntu sous lequel j'ai installer lampp et je penser au debut envoyer les données par email mais j'ai laisser tomber car je ne souhaite rien installer de plus (j'ai deja des serveurs jeux et teamspeak dessus et je ne voudrai pas qu'ils en patissent).
Je me suis donc orienter vers une solution formulaire et fichier txt (qui en faite es plutot un fichier html) qui devrai etre rempli une fois le formulaire validé (et que je compte cacher via un htaccess ou autre pour etre le seul a visualiser le contenu qui ne regarde personne d'autre).

Voici donc mes codes :
<hr size="2" width="100%" />Formulaire.html
<form method=post action=ecrire.php>
    ----

        Nom : ,
            &nbsp;(Nom),
   
    ----

        E-Mail : ,
       
            &nbsp;(E-Mail adresse),
   
    ----

        Sujet
            : ,
        ,
   
    ----

        Remarques : ,
        <textarea name="Comment"
             rows="5" cols="35"></textarea>,
   
    ----

       
           
            ,
   
</form>
<hr size="2" width="100%" />ecrire.php
<?php
/* si register_globals off (à partir de PHP 4.3)*/
$commentaire = $_POST['commentaire'];
$ladate=date("d/m/Y");
$lheure=date("H:i");
$Comment= $_POST['Comment'] ;
$sender = $_POST['sender'] ;
$email = $_POST['email'] ;
$title = $_POST['title'] ;
if ($commentaire!="")
    {
    /* Ecriture avec ouverture de fichier en mode a+*/
/* mode a+
pour écrire à la suite des caractères
déjà présents dans le fichier
*/
/* mode w+
pour effacer les données présentes
et écrire dans le fichier.
Si ce fichier n'existe pas il est créé.
*/

$ouvre=fopen("messages.html","a+"); // ouverture en lecture ( a+)
fwrite($ouvre," Message poster par ");
fwrite($ouvre,$sender); 
fwrite($ouvre," le ");
fwrite($ouvre,$ladate);   
fwrite($ouvre," a ");
fwrite($ouvre,$lheure);
fwrite($ouvre,"
");
fwrite($ouvre," Sujet :  ");
fwrite($ouvre,$title);
fwrite($ouvre,"
");
fwrite($ouvre," Message :  ");
fwrite($ouvre,$Comment);
fwrite($ouvre,"
");
fwrite($ouvre,"
");
fwrite($ouvre," Contact :  ");
fwrite($ouvre,$email);
fwrite($ouvre,"
");
fwrite($ouvre,"
");  
fclose($ouvre);            // fermeture fichier
    }
?>
<hr size="2" width="100%" />Hélas je ne sait pour quelle raison, mon fichier messages.html reste vierge :(
Je pense que ca doit etre asser bete mais je ne m'y connait pas suffisament pour trouver l'erreur.
Merci par avance d'avoir eut la patiente de me lire :)
Afficher la suite 

2 réponses

Répondre au sujet
kohntark 3708 Messages postés lundi 5 juillet 2004Date d'inscription 27 avril 2012 Dernière intervention - 7 janv. 2009 à 09:40
+3
Utile
Salut,

Déjà :
<form method= post action=ecrire.php>
=>
<form method="post" action="ecrire.php">

Ca ne fonctionne pas parce que $_POST['commentaire'] n'est jamais définie.
$commentaire $_POST['commentaire'];> à virer

if ($commentaire!="")
=>
if ($Comment != "")

Et puis :
fwrite($ouvre," Message poster par ");
fwrite($ouvre,$sender); 
fwrite($ouvre," le ");
fwrite($ouvre,$ladate);   
fwrite($ouvre," a ");
fwrite($ouvre,$lheure);
fwrite($ouvre,"
");
fwrite($ouvre," Sujet :  ");
fwrite($ouvre,$title);
fwrite($ouvre,"
");
fwrite($ouvre," Message :  ");
fwrite($ouvre,$Comment);
fwrite($ouvre,"
");
fwrite($ouvre,"
");
fwrite($ouvre," Contact :  ");
fwrite($ouvre,$email);
fwrite($ouvre,"
");
fwrite($ouvre,"
");

=>
$str = 'Message posté par '.$sender.' le '.$ladate.' à '.$lheure.'
... blabla
fwrite($ouvre, $str);
... plus rapide et, pour moi, plus lisible

Cordialement,

Kohntark -
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de kohntark
vita83 20 Messages postés vendredi 28 avril 2006Date d'inscription 13 mars 2013 Dernière intervention - 7 janv. 2009 à 11:10
0
Utile
Salut Kohntark et merci pour cette reponse :)
En effet j'avais tester d'ajuster a mon besoin un script existant et effectivement en te lisant je me suis rendu compte de l'erreur "if ($commentaire!="")" qui corresponder au script de base et que je n'es pas penser a modifier :( (la honte lol).
Pour ce qui es des lignes $str = 'Message posté par '.$sender.' le '.$ladate.' à '.$lheure.'
... blabla
fwrite($ouvre, $str);  elles me créent une erreur, mais je vais chercher un peu plus sur la facon d'ecrire en php :)

En tout cas, ta réponse me convient puisque en ayant modifier le début du script, il fonctionne a merveille.Un grand merci a toi.
Commenter la réponse de vita83

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.