Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 04/12/2008, à 18:25

pas codeur du tout!

La revanche du script : version encore plus simple! :)

Bonjour!

Suite à plusieurs posts et quelques échanges avec les gens d'ici, nous sommes arrivés (surtout AlexandreP en fait tongue) a ce sublime script qui permet d'afficher une page avec les éléments

_ Nom
_ Prenom
_ Valider

Permettant d'envoyer ces informations par mail.

Mais apres quelques recherches, la configuration d'un client mail, est vraiment trop complexe (le site est pour finir hebergé sur un pc a la maison).

Donc j'aimerais savoir comment modifier ce script en conséquence pour enregistrer ces informations dans un fichier texte sur le disque et non pas par envoi mail.

Soit un fichier par personne (l'idéal).
Soit un fichier pour tout le monde, ou les choses s'écriraient (sans bien sur tout réeffacer a chaque fois).

Merci bien d'avance. Inutile de vous donner mon niveau en php, vous l'aurez surement deviné ^^'

Voici le script :

<?php

/**
 * Script d'envoi de courriels
 */
 
if ($_POST['envoi']) {    //Si on a déjà envoyé une première fois les données
    $erreur = 0;    //On met le compteur d'erreur à 0
    
    if (empty($_POST['prenom']) || empty($_POST['nom'])) {    //Si le prénom ou le nom est manquant :
        $erreur="Informations non valides. Vérifiez vos informations.";    //On retourne un message d'erreur...
        return;    //... et on arrête l'exécution du script.
    };
    
//Si on n'a pas d'erreur, on construit puis on envoie le courriel, puis on affiche une erreur positive
$courriel = "association@domaine.asso.fr";
$sujet = "Abonnement de ".$_POST['prenom']." ".$_POST['nom'];
$message = "Ce message confirme l'adhésion de ".$_POST['prenom']." ".$_POST['nom']." à l'association";
mail($courriel,$sujet,$message);
$erreur="Votre abonnement a bien été envoyée à l'association !";

//Puis, qu'on ait ou non envoyé l'adhésion, on affiche le formulaire

}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<head>
    <title>S'inscrire à l'association</title>
</head>

<body>

<?php if ($erreur) :
//Si on a reçu une erreur lors d'un envoi précédent, on affiche le message d'erreur
?>
<div>
    <p><?php echo $erreur; ?></p>
</div>
<?php endif; ?>

<form method="post" action="<?php $PHP_SELF; ?>">
    <ul style="list-style: none;">
        <li><label>Préom&nbsp;: <input type="text" id="prenom" name="prenom" value="<?php echo $_POST['prenom'] ?>" /></label></li>
        <li><label>Nom&nbsp;: <input type="text" id="nom" name="nom" value="<?php echo $_POST['nom'] ?>" /></label></li>
        <li><input type="submit" value="Envoyer" /><input type="hidden" id="envoi" name="envoi" value="1" /></li>
    </ul>
</form>

</body>
</html>

#2 Le 04/12/2008, à 21:47

jluc

Re : La revanche du script : version encore plus simple! :)

Bonjour,

je ne connais pas trop php, mais voilà ce que je mettrais à la place du paragraphe de construction et d'envoi du mail :

$file = "../fichiers/".$_POST['nom']."_".$_POST['prenom'].".txt";
$text = "ce que tu veux mettre dans le fichier...";
$handle = fopen($file,"w");
fwrite($handle, $text);
$erreur="Votre adhésion a bien été prise en compte.";
fclose($handle);

ou si tu préfères n'avoir qu'un fichier :

$file = ""../fichiers/adhesions.txt";
$text = $_POST['nom']." ".$_POST['prenom']."\n";
$handle = fopen($file,"a");
fwrite($handle, $text);
$erreur="Votre adhésion a bien été prise en compte.";
fclose($handle);

pour que ça fonctionne tel quel, il faut créer un dossier "fichiers" dans le dossier parent du dossier racine et changer le propriétaire ou les droits pour que l'utilisateur www-data puisse créer et modifier des fichiers

Hors ligne

#3 Le 05/12/2008, à 01:00

pas codeur du tout!

Re : La revanche du script : version encore plus simple! :)

Ca fonctione PARFAITEMENT!

Merci beaucoup, c'est vraiment superbe! smile