Extraire mail dans fichier php

Fermé
ptite59 - 23 févr. 2009 à 10:05
 ptite59 - 23 févr. 2009 à 14:45
Bonjour,

Je suis une grande nigotte qui n'a pas pensé avant d'enregistrer ses mails dans une base de données...
OUi je l'avoue lol

Je suis responsable d'un site de contributions photos, j'ai quelques 450 pages et quasiment autant d'adresse mail, le hic c'est que je n'ai pas pensé à sauvegarder au fur et à mesure les mails de contact. Ils existent sur mes pages mais pas dans ma base.

J'utilise un formulaire de contact en php donc chaque mail est dans un fichier formmail.php, j'ai essayé un extracteur de mail en local mais ca n'a pas marché...

Y a t il un moyen de récupérer ses adresses en local sans que je les fasse une à une?

Merci beaucoup

17 réponses

Passarinho44
Messages postés
963
Date d'inscription
mercredi 28 mai 2008
Statut
Contributeur
Dernière intervention
13 juin 2012
132
23 févr. 2009 à 11:25
Tes mails sont sous quel forme dans ton fichier?
Comment ça se passe au niveau du code quand tu enregistres un nouveau mail pour l'instant?
0
<?php
$TO = "mail@mail.com";

$h = "From: " . $TO;

$message = "";

while (list($key, $val) = each($HTTP_POST_VARS)) {
$message .= "$key : $val\n";
}

mail($TO, $subject, $message, $h);

Header("Location: merci3.htm");

?>
0
Passarinho44
Messages postés
963
Date d'inscription
mercredi 28 mai 2008
Statut
Contributeur
Dernière intervention
13 juin 2012
132
23 févr. 2009 à 11:36
Ca c'est le formulaire d'envoi de mail.
Mais où est ce que tu stockes ces adresses mail?
0
j ai un fichier formmail dans chaque dossier ou se trouve la contribution
donc j ai un fichier par dossier
un mail par dossier
0

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

Posez votre question
Passarinho44
Messages postés
963
Date d'inscription
mercredi 28 mai 2008
Statut
Contributeur
Dernière intervention
13 juin 2012
132
23 févr. 2009 à 11:46
Donc tu as un dossier par contribution, et dans chaque dossier, un fichier formmail où tu as l'adresse mail c'est bien ça?
0
exacte oui
0
Passarinho44
Messages postés
963
Date d'inscription
mercredi 28 mai 2008
Statut
Contributeur
Dernière intervention
13 juin 2012
132
23 févr. 2009 à 12:12
Bien alors au niveau de là où tu as tous tes dossiers contribution, tu mets dans une page PHP ce code :

<html>
<head>
<title>Test</title>
</head>
<body>
<center>
<?php
$my_dir = "./";
if ( $dir = @opendir($my_dir) ) {
while ( $file = @readdir($dir) ) {
if ( $file != "." and $file != ".." ) {
if ( $dir2 = @opendir($my_dir . "/" . $file) ) {
while ( $file2 = @readdir($dir2) ) {
if ( $file2 == "formmail.php" ) {
//echo $my_dir . "/" . $file . "/" . $file2 . '<br />';
$open_file = @fopen($my_dir . "/" . $file . "/" . $file2, "r");
$read = fread($open_file, filesize($my_dir . "/" . $file . "/" . $file2) );
echo $read . '<br />';
}
}
}
}
}
@closedir($dir);
}
?>
</center>
</body>
</html>


Par contre je suis parti sur le principe que tout tes fichiers où se trouvent les adresses mail s'appellent formmail.php, si ce n'est pas le cas, modifie le nom du fichier.

Si ces fichiers n'ont pas le même nom ça va être plus délicat pour lister tous leur contenu sans lister le contenu des autres fichiers de ces dossiers contribution.

Dis moi si tu as un soucis!
0
ok j ai donc créé ma page php avec le script, j'ai transféré sur mon serveur et j'ai appelé la page.
celle ci s'est exécutée j'ai une page blanche. J'ai alors affiché la source via internet explorer et j'ai pu voir dans le bloc note ce que la page contenait.
Malheureusement je ne sais pas si c est le but de ton script mais tout le contenu des pages formmail s'est affiché. Il n'y a pas que le mail... Est ce normal?

en tout cas merci
0
Passarinho44
Messages postés
963
Date d'inscription
mercredi 28 mai 2008
Statut
Contributeur
Dernière intervention
13 juin 2012
132
23 févr. 2009 à 14:09
C'est bizarre la page blanche ... Chez moi le contenu des pages formmail s'affichent très bien.

Tu peux me donner un exemple d'une de tes pages formmail pour que je vois comment elles sont formées?
Elles se ressemblent toutes ou elles changent complètement d'un dossier à l'autre?
0
elles sont toutes identiques, sur le modele que j ai posté tout al heure
0
Passarinho44
Messages postés
963
Date d'inscription
mercredi 28 mai 2008
Statut
Contributeur
Dernière intervention
13 juin 2012
132
23 févr. 2009 à 14:27
Remplace la page que je t'ai donné par celle-ci :

<html>
<head>
<title>Test</title>
<link rel="stylesheet" type="text/css" href="css/styles.css" />
</head>
<body>
<center>
<?php
$my_dir = "./arbo";
if ( $dir = @opendir($my_dir) ) {
while ( $file = @readdir($dir) ) {
if ( $file != "." and $file != ".." ) {
if ( $dir2 = @opendir($my_dir . "/" . $file) ) {
while ( $file2 = @readdir($dir2) ) {
if ( $file2 == "formmail.php" ) {
//echo $my_dir . "/" . $file . "/" . $file2 . '<br />';
$open_file = @fopen($my_dir . "/" . $file . "/" . $file2, "r");
$read = fread($open_file, filesize($my_dir . "/" . $file . "/" . $file2) );
$aTemp = explode( "$TO = \"", $read);
$aTemp = explode("\";", $aTemp[1]);
echo $aTemp[0] . '<br />';
}
}
}
}
}
@closedir($dir);
}
?>
</center>
</body>
</html>

Elle devrait t'afficher juste les adresses mail.
0
ben c est encore pire car meme en affichant la source y a plus rien :s
0
Passarinho44
Messages postés
963
Date d'inscription
mercredi 28 mai 2008
Statut
Contributeur
Dernière intervention
13 juin 2012
132
23 févr. 2009 à 14:38
Oups dsl petite erreur :
Remplace :
$my_dir = "./arbo";
Par :
$my_dir = "./";

C'est ce que j'avais mis pour mes tests ...
0
Gééééééééééénialllllllllll ca marche

Merci beaucoup de ta patience et ton aide

maintenant je tiens à jour mes adresses mail ca évitera de chercher les autres fois... lol

Bonne continuation
0
merci merci
0
Passarinho44
Messages postés
963
Date d'inscription
mercredi 28 mai 2008
Statut
Contributeur
Dernière intervention
13 juin 2012
132
23 févr. 2009 à 14:45
De rien :)
0
heuuuuuuuuuuu comment faire pour indiqué que la discussion est terminée? lol j avais le lien tout a l aheure mais j ai nettoyé mes cookies entre temps...
0