[PHP] Bouton = > Envoi de mail avec @mail( )

Résolu/Fermé
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 - 22 sept. 2006 à 17:49
oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 - 28 sept. 2006 à 10:10
Bonjour tout le monde,

Dans un formulaire récapiltulant la saisie d'un user, j'ai un bouton symbolisant une imprimante et je voudrais faire en sorte qu'en cliquant dessus on envoie un descriptif des informtations saisies...

J'ai trouvé des bouts de codes, mais jamais avec un bouton ... C'est toujours des formulaires et un bouton de validation ('submit') ... J'aimerais donc savoir si ce que je veux faire est possible...

<?php
echo'<button type="" style="background:lavender; cursor:hand; border:solid 1px lavender;" onclick="@mail(elsadelatoundra@hotmail.fr,test,$message)">';
?>
<img src="../images/email2.gif">
</button>

Voilà ce que j'ai fait ... mais vous vous en doutiez, ça ne marche pas !!

Merci d'avance à ceux qui pourront me filer un petit coup de main !

;-)
A voir également:

10 réponses

oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 248
26 sept. 2006 à 11:50
Bonjour,

Ah oui, c'est couillu...
Si j'ai bien compris, tu voudrais que ton bouton:
1. Envoie un mail avec les données précedement saisies
2. Imprime une page récapitulatives de ces memes données.

Il faut rediriger ton formulaire vers une nouvelle page, qui traitera les informations en provenance du formulaire, puis enverra le mail par la fonction mail(), et affichera une version imprimable des infos.

Ce sera plus facile et plus propre que de vouloir tout bourrer dans le formulaire. :)

Cdlt.
0
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
26 sept. 2006 à 12:06
Ben en fait non, c'est pas ça ... pas exactement !!

Un utilisateur saisi des infos dans un formulaire ... ces infos concernent son activité journalière. Quand il clique sur le bouton mail, il décide d'envoyer les informations saisies sur son mail c'est le $message ... mais pour l'instant, ça n'envoie pas de mail ... même si je fais $message="test" !

Voilà, j'espère que j'ai réussi à bien m'exprimer cette fois-ci !!

Merci d'avance
0
oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 248
26 sept. 2006 à 12:15
Re,

Normal, puisque la focntion mail() est executé au chargement de la page, et non pas lorsque tu cliques sur ton bouton.
Il te faut nécessairement rediriger ton formulaire vers une nouvelle page pour traiter les données et envoyé le mail.

Ou sinon, c'est surement possible en Ajax avec du js et beaucoup de patience. :)

Cdlt.
0
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
26 sept. 2006 à 13:11
Ha oé, pas mal l'idée : AJAX ... mais lol !! D'autant plus que je commence à peine le JS et que je galère en camion ...

Bon, je vais faire comme tu me conseilles avec un autre formulaire, ça a l'air pas mal ça !

Merci beaucoup pour tes réponses !
0

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

Posez votre question
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
26 sept. 2006 à 14:17
Reuh !!

Voilà ce que j'ai récupéré et modifié :
<HTML>
<?php
$TO = "elsadelatoundra@hotmail.fr";

$h  = "From: " . $TO;

$message = "";

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

$subject="test";

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

Header("Location: ../RSSI/accueil_RSSI.php");

?>
</HTML>


C'est sensé marcher ...

Là, je comprends qu'il ne veut pas mais je ne sais pas pourquoi !!

Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in c:\program files\easyphp1-8\www\rssi\formmailrssi.php on line 15

Là apparemment il faut que je change .ini de php, mais mon appli qui est pour l'instant en local va être en réseau par la suite, je ne sais pas si je pars dans la bonne voie là !!

Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\rssi\formmailrssi.php:2) in c:\program files\easyphp1-8\www\rssi\formmailrssi.php on line 17


Aidez moi !!

Merci ;-)
0
oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 248
26 sept. 2006 à 14:44
Ok.
On est sur la bonne voie.

Il faut maintenant trouver un serveur SMTP te permettant d'envoyer des mails. Soit tu en installes un sur ta machine de dev, soit tu utilises un serveur SMTP existant (celui de ton FAI par exemple).
Ensuite, dans le php.ini, il te faudra parametrer l'adresse du serveur smtp. Si tu en installes un sur tamachine, tu laisses tout par défaut, sinon, il faudra te rendre dans la section SMTP.

Cdlt.
0
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
26 sept. 2006 à 15:11
En fait je travaille en local et je ne connais pas mon FAI parce que je suis en stage et que je ne suis pas sur mon pc !!

Pas grave, je verrai plus tard quand je ne serai plus en local (aïe !!) ...
0
oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 248 > elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008
26 sept. 2006 à 15:12
Sous quel OS es tu ?
Il existe un serveur SMTP préinstallé sous Windows XP/2000.
0
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
26 sept. 2006 à 15:17
C'est XP pro
0
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
26 sept. 2006 à 15:18
version 5.1
0
oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 248
26 sept. 2006 à 15:22
Dans ce cas, tout va bien. De mémoire, tu vas dans Panneau de Configuration > Ajout/Suppression de nouveau programme > Composant Windows > Tu cherches serveur SMTP dans la liste et tu cliques dessus.
Etant sous Linux actuellement, je ne peux pas verifier mes dires... :)

Cdlt.
0
elsadelatoundra Messages postés 126 Date d'inscription mercredi 13 septembre 2006 Statut Membre Dernière intervention 3 juillet 2008 14
26 sept. 2006 à 15:55
Je ne trouve pas comme ça mais sinon, j'ai trouvé des forums sur lesquels ils expliquent comment faire pour connaitre notre FAI et par conséquent notre SMTP :

Il faut aller sur http://www.monadresseip.com pour connaître son adresse IP publique. Ensuite sur https://www.dnsstuff.com/ il faut aller dans IPWHOIS Lookup pour connaître le FAI.

Voilà, donc à tester ...

Merci
0
oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 248
28 sept. 2006 à 10:10
Re,
Oui, mais cela ne te donnera pas l'adresse du serveur SMTP pour autant.

Essaie de mettre un smtp sur ta machine de dev, ce sera plus facile. :)

Cdlt.
0
killerscraft Messages postés 41 Date d'inscription mardi 26 avril 2005 Statut Membre Dernière intervention 6 décembre 2009
27 sept. 2006 à 18:32
Bonjour, j'aimerais savoir s'il vous plait comment creer sa propre adresse mail avec une redirection a la "vraie" ou pouvoir recevoir les e-mail par exemple avec outlook.

Exemple :
bonjour@aurevoir.bye creer ce genre d'adresse, comme font les sociétés.

Merci d'avance...
0
oberion Messages postés 1253 Date d'inscription mardi 26 septembre 2006 Statut Membre Dernière intervention 29 septembre 2007 248
28 sept. 2006 à 10:08
Bonjour,

Nouveau probleme, nouveau message.

Merci,

Cdlt.
0