Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

modifier un script php _ je debute _ help !

13 réponses
Avatar
Bastan
Bonjour,
J'ai copié sur ce (très bon) site ://www.salemioche.net/script-php-1.php
un script en php "formmail" qui fonctionne très bien.


Voici un extrait des explications..
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Le principe du form mail est de permettre à
vos visiteurs de remplir un formulaire et ensuite
de vous envoyer un email avec ce qui a été saisi.
Pour faire cela nous allons utiliser PHP

<?php
$TO = "votre adresse email";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($HTTP_POST_VARS)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
Header("Location: http://<URL de la page de remerciement>");
?>
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


Seulement j'aimerais en plus du destinataire "$TO = "votre adresse email";"
rajouter d'autres adresses en copie.
Mais je ne sais pas le faire.
Est ce que c'est possible ?
Si oui.... Je suis tout ouï ;-)))

Merci de vos réponses !














Aujourd'hui, l'idéal du progrès est remplacé par l'idéal de l'innovation :
il ne s'agit pas que ce soit mieux, il s'agit seulement que ce soit nouveau,
même si c'est pire qu'avant et cela de toute évidence. Montherlant

10 réponses

1 2
Avatar
ernesto

<?php


// Plusieurs destinataires
$TO = '' . ', '; // notez la virgule
$TO .= '' . ', '; // notez la virgule
$TO .= '';

voir la doc php function mail
Personnellement j'utilise un IDE (Integrated Devellopement Editor)
PHPEdit voir http://www.waterprof.fr (licence gratuite pour usage non
commercial). Vous tapez F1 sur le mot mail et vous avez une doc de la
fonction mail ....
PHPEdit est un outil fantastique pour le débutant que je suis.

$TO = "votre adresse email";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($HTTP_POST_VARS)) {
$message .= "$key : $valn";
}
mail($TO, $subject, $message, $h);


Avatar
ernesto
voir la doc php function mail
Personnellement j'utilise un IDE (Integrated Devellopement Editor)
PHPEdit voir http://www.waterprof.fr (licence gratuite pour usage non
waterproof avec deux o !!!



http://www.waterproof.fr

Ernesto

Avatar
Bastan
J'avais rectifié les 2 "o" ;-)

Par contre, est ce que le "." est nécessaire entre "$TO" et "=" dans "$TO .=
"
Et est ce que les " ' " ne devraient pas être remplacés par des " " " ?

J'ai essayé de plusieurs manières, et dans le meilleur des cas l'email
arrive au premier destinataire : $TO = "votre adresse email";
dans mon exemple du début, et les autres adresses sont bien en copie dans ce
premier email, mais elle ne recoivent jamais le message...

J'espère que je ne suis pas trop brouillon dans mes questions...


Ceci dit, je ne suis pas encore allé sur waterproof ( pas facile depuis le
boulot ), et comme tu le dis, j'y trouverai sûrement quelques réponses.....

Merci ;-))
Avatar
Olivier Miakinen

Par contre, est ce que le "." est nécessaire entre "$TO" et "=" dans "$TO .=
"


RTFM : opérateurs de chaîne.
http://www.php.net/manual/fr/language.operators.string.php

Et est ce que les " ' " ne devraient pas être remplacés par des " " " ?


RTFM : les chaînes de caractères.
http://www.php.net/manual/fr/language.types.string.php

J'ai essayé de plusieurs manières, et dans le meilleur des cas l'email
arrive au premier destinataire : $TO = "votre adresse email";


Si tu supprimes le « . » dans « .= », c'est plutôt le dernier
destinataire qui devrait être le seul à le recevoir.

dans mon exemple du début, et les autres adresses sont bien en copie dans ce
premier email, mais elle ne recoivent jamais le message...


Euh ???

Elles sont en copie, ou elles ne le sont pas ?

J'espère que je ne suis pas trop brouillon dans mes questions...


Là, un peu, si.

Avatar
Bastan
J'ai dû râter quque chose, parce que l'install s'est bien passée, mais F1 me
donne une fenêtre vide à chaque fois...

Vous tapez F1 sur le mot mail et vous avez une doc de la


Avatar
Moi
Ce que je voulais dire,

c'est que si A est le destinataire principal, avec par exemple B et C en
copie, et bien dans le message que reçoit A, on voit bien dans l'entête
que B et C sont en copie, mais par contre B et C ne recoivent jamais le
message....

Elles sont en copie, ou elles ne le sont pas ?


Avatar
Moi
Une question supplementaire: sans abuser...

Est il possible dans le script, de demander un accusé de réception aux
messageries destinataires ?

Merci ;-)
Avatar
Olivier Miakinen

Ce que je voulais dire,

c'est que si A est le destinataire principal, avec par exemple B et C en
copie, et bien dans le message que reçoit A, on voit bien dans l'entête
que B et C sont en copie, mais par contre B et C ne recoivent jamais le
message....


Ça y est, j'ai compris.

Dans la doc <http://fr2.php.net/manual/fr/function.mail.php> il est
pourtant bien précisé que c'est comme ça que cela fonctionne. Ce que
je suppose, c'est que la fonctionnalité a été bridée chez ton hébergeur
afin de limiter l'envoi à un seul destinataire. Je trouve d'ailleurs que
ce serait une *excellente* chose pour limiter le spam dû aux scripts mal
conçus.

Donc, dans ton cas précis, si tu veux envoyer un courriel à deux
personnes à la fois (ou plus), soit tu envoies deux fois le courriel,
soit tu l'envoies à une liste de diffusion qui le redirigera à toutes
les personnes inscrites.


Par ailleurs,

1) Inutile d'envoyer une copie par courriel à chaque fois que tu écris
dans les groupes de nouvelles. J'ai reçu en privé les deux articles que
tu as publiés en réponse au mien.

2) Si ton adresse , que je trouve drôlement courte, n'est
pas vraiment la tienne, c'est mal © de faire spammer ton FAI à ta place
et tu devrais la suffixer par le nom de domaine réservé INVALID :
.

Avatar
Olivier Miakinen

Une question supplementaire: sans abuser...

Est il possible dans le script, de demander un accusé de réception aux
messageries destinataires ?


Oui, il est possible de le demander : il suffit pour cela de mettre
l'entête qui va bien¹ dans le champ additional_headers, séparé du
champ From par un saut de ligne n (transformé en rn par l'outil
qui transmet effectivement le courriel).

En outre, si tu décides d'envoyer plusieurs courriels au lieu d'un comme
je le suggérais dans ma réponse précédente, cela te permet de ne le
faire que pour ceux qui le souhaitent.

Note malgré tout que « demander » un accusé de réception ne signifie pas
que tu recevras forcément cet accusé de réception lorsque le message
parviendra à destination : l'utilisateur final est toujours libre de
configurer son machin pour ne jamais répondre à ce genre de question.


¹ Lire les normes sur le format des messages pour savoir quel entête est
approprié, ou demander sur fr.comp.mail. Je ne sais pas moi-même lequel
c'est.

Avatar
titi
X-No-Archive: yes
Restrict: no-external-archive
"Moi" a écrit dans le message de news:

: Est il possible dans le script, de demander un accusé de réception aux
: messageries destinataires ?

Bonsoir,


"Return-Receipt-To: $expediteur_mailn";

Cordialement
--
G.M.
1 2