Récupérer les données d'un formulaire PHP
Bonjour,
Je voudrais créer un petit formulaire PHP où la personne inscrirait son e-mail et cliquerait sur OK. Je voudrais que les données (la liste des adresses e-mail) soient stockées dans un fichiers texte.
J'ai essayé le script "SimpleList" mais il ne marche pas !!
Comment faire ?!
Je voudrais créer un petit formulaire PHP où la personne inscrirait son e-mail et cliquerait sur OK. Je voudrais que les données (la liste des adresses e-mail) soient stockées dans un fichiers texte.
J'ai essayé le script "SimpleList" mais il ne marche pas !!
Comment faire ?!
Configuration: Windows XP Safari 530.19.1
12 réponses
-
bonjour,
essaye :<?php if(isset($_POST['mail'])) { $f = fopen('./fichier.txt','a'); fwrite($f,htmlentities($_POST['mail']."\r")); fclose($f); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <head> <title>MAIL</title> </head> <body> <form action="" method="post"> <p>Mail : <input type="text" name="mail" /> <input type="submit" value="OK" /></p> </form> </body> </html> -
Avez-vous pensé à mettre les permissions à 777 ?
Dans filezilla, il me semble que c'est "Permission du fichier".-
-
@94uaehdQuestion stupide: avez-vous bien mis ces permissions sur le fichier texte ? Il ne faut pas mettre de telles permissions sur le fichier php.
-
-
Quel est l'hébergeur du site ?
Et de plus est ce que le "path" du fichier texte est au bon endroit par rapport au script ? -
Essayes :
$f = fopen('fichier.txt','a');
Et si ca marche pas, as tu un message d'erreur ?
-
regarde a la racine du disque je me souviens avoir eu ce problème au début que j'utilisais ces fonctions...
-
tu fais ça en local?
essaye avec cette fonction :
function modifier($adr,$name,$contenu,$droits='a') { if ($adr == '') $adr = '.'; $getcwd = getcwd(); chdir($adr); $path = getcwd().'/'.$name; $file = fopen($path,$droits); $write = fwrite($file,$contenu); fclose($file); chdir($getcwd); return $write; } -
1. non je ne fais pas ca en local
2. ca ne marche toujours pas, merci quand meme ! -
Ok crées une page test.php au meme endroit que ta page qui doit écrire dans le fichier texte et mets :
<?php
if ( is_file('fichier.txt') )
echo 'fichier trouvé';
?>
Au moins on verras si c'est au bon endroit. -
Ok alors maintenant :
echo fileperms('fichier.txt');
-
Ok vires tout dans test php et mets :
<?php
$perms = fileperms('fichier.txt');
if (($perms & 0xC000) == 0xC000) {
// Socket
$info = 's';
} elseif (($perms & 0xA000) == 0xA000) {
// Lien symbolique
$info = 'l';
} elseif (($perms & 0x8000) == 0x8000) {
// Régulier
$info = '-';
} elseif (($perms & 0x6000) == 0x6000) {
// Block spécial
$info = 'b';
} elseif (($perms & 0x4000) == 0x4000) {
// Dossier
$info = 'd';
} elseif (($perms & 0x2000) == 0x2000) {
// Caractère spécial
$info = 'c';
} elseif (($perms & 0x1000) == 0x1000) {
// FIFO pipe
$info = 'p';
} else {
// Inconnu
$info = 'u';
}
// Propriétaire
$info .= (($perms & 0x0100) ? 'r' : '-');
$info .= (($perms & 0x0080) ? 'w' : '-');
$info .= (($perms & 0x0040) ?
(($perms & 0x0800) ? 's' : 'x' ) :
(($perms & 0x0800) ? 'S' : '-'));
// Groupe
$info .= (($perms & 0x0020) ? 'r' : '-');
$info .= (($perms & 0x0010) ? 'w' : '-');
$info .= (($perms & 0x0008) ?
(($perms & 0x0400) ? 's' : 'x' ) :
(($perms & 0x0400) ? 'S' : '-'));
// Tous
$info .= (($perms & 0x0004) ? 'r' : '-');
$info .= (($perms & 0x0002) ? 'w' : '-');
$info .= (($perms & 0x0001) ?
(($perms & 0x0200) ? 't' : 'x' ) :
(($perms & 0x0200) ? 'T' : '-'));
echo $info;
?>
-
Ok tu as fait quoi comme manip pour faire le chmod sur ton fichier.txt ?
On dirait que ton chmod actuel n'est pas bon (pas en écriture). -