sur mon hébergeur gratuit (Free), quand le mail ne part pas, il n'y a pas de délai de traitement ...
Quand ça fonctionne, il y a un petit délai d'environ 2 seconde
Comment pourais je mettre ce petit timer, qui s'il n'est pas validé, envoie le message de la page d'erreur ?
J'ai trouvé ce code mais ou le placer dans la fonction mail de ce script superContact ?
Merci pour ce script et pour PluXml, vraiment formidable
[== PHP ==]
<?php
/** Nouvelle fonction mail pour le FAI Free, conforme au standard
*De temps en temps les courriels ne sont pas envoyés, mais pourtant la fonction mail() renvoie True
*ce qui n'est pas conforme a la spécification PHP de cette fonction.
*De manière empirique, il a été déterminée qu'un temps d'envoi au moins égal à 2 secondes est une garantie que le courriel
*est vraiment envoyé.
*Si le mail est vraiment envoyé, une notification de rejet est bien envoyé par Free à l'adresse de l'expéditeur du message
*Copyright 2013 - a@a.a <tmp12311@free.fr>
*Licence : CeCILL-B, http://www.cecill.info
*Merci à Gaming Zone <http://gaming.zone.online.fr> pour ses tests ayant permis de déterminer la durée
* */
function mailFree($to , $subject , $message , $additional_headers=null , $additional_parameters=null) {
$start_time = time();
$resultat=mail ( $to , $subject, $message, $additional_headers, $additional_parameters);
$time= time()-$start_time;
return $resultat & ($time>1);
}
/** Fin de la définition de la fonction*/
?>
bonjour
pas essayé, mais je mettrais ce code dans un fichier placé dans le même répertoire que superContact.php & form.contact.php, par exemple plugins/superContact/mailFree.php
dans dans plugins/superContact/form.contact.php, vers la ligne 167, remplacer:
[== PHP ==]
if(!$error) {
include_once (__DIR__.'/mailFree.php');
if ( mailFree( $plxPlugin->getParam('email'),$plxPlugin->getParam('subject'),$rajout) ) $success = $plxPlugin->getParam('thankyou');
//email_cc & email_bcc non pris en compte pour un premier essai
else $error = $plxPlugin->getLang('L_ERR_SENDMAIL');
}
si ça fonctionne, je regarderais comment utiliser: $plxPlugin->getParam('email_cc')."\n".$plxPlugin->getParam('email_bcc')
je testerais comme paramètre $additional_headers, j'imagine, à tester sur free.
Merci "Kyodev"
Je vais essayer ton code pour l'insertion dès que possible et je reviens avec des nouvelles
Il faut bien entendu que je tombe sur la période ou le serveur de mail n'envoie rien (mais sans signaler d'erreur), aléatoirement.
A++
Dan
EDIT :
Bon zut
j'ai bien tout vérifié mais j'ai ça :
Fatal error: Call to undefined function mailFree() in (suivi de l'adresse)
Ok, ça a résolu le problème, effectivement le serveur est en version 5.1.3RC4-dev
Et le timer semble bien fonctionner, j'ai eu une première page d'erreur car la fonction mail n'a pas été traitée convenablement (affichage très rapide), puis en réessayant une seconde fois, le formulaire a bien été traité, et m'est parvenu
Par contre je n'ai plus le même charset et les accents ne passent plus correctement ...
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
AVANT :
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
J'aimerai bien cependant implanter une fonction de sauvegarde des mails sur le serveur, j'ai une ancienne version de PluXml qui a cela, et un site qui tourne dessus, et c'est très très pratique : Je retrouve en ligne tous les mails transmis depuis des années, sagement rangés dans un dossier (et notamment ceux qui ne sont jamais partis par malfonction du serveur de mail)
> j'ai une ancienne version de PluXml qui a cela, et un site qui tourne dessus, et c'est très très pratique :
> Je retrouve en ligne tous les mails transmis depuis des années, sagement rangés dans un dossier
si tu as un ancien fichier à m'envoyer, j'aimerai bien m'en inspirer car c'est une fonctionnalité nécessaire pour moi, free ou autres, je ne fais guère confiance aux envois via mail(), car même si ça part bien des hébergeurs, ça peut-être aussi blacklisté côté destinataires.
@Stéphane
Quelle est la version php5 minimale requise pour pluXml?
un petit bug avec l'archive zip du plugin, lorsqu'on utilise le plugin MyPluginDownloader et qu'on télécharge l'archive son contenu est extrait à la racine du répertoire /plugins et non pas dans son répertoire plugins/superContact.
Sur ce… je vais tester, car j'étais justement en train de chercher un formulaire un peu plus évolué.
Un petite question car je ne sais pas si ça vient du fait que j'utilise (pour l'instant) ssmtp sur le serveur ou si c'est un fonctionnement normal de plxMyContact, l'expéditeur (From) du mail est l'user unix du serveur web, et non pas l'email renseigné dans le formulaire, normal ?
bonjour,
à priori c'est programmé pour utiliser le nom et le mail du formulaire
plxUtils::sendMail($nom_expediteur,$mail,...
public static function sendMail($name, $from,...
Oui, d'après le code ça devrait être les info renseigné dans le from. Mais ces infos sont dans le Reply-To, le from quant-à lui est sur l'user du serveur Web.
Je vais essayer en installant Postix, ou en utilisant sendmail-submit pour voir si ça ne viendrait pas de ssmtp.
Le serveur web tournant dans une jail FreeBSD je n'avais (à priori) pas besoin de MTA.
Un petite question car je ne sais pas si ça vient du fait que j'utilise (pour l'instant) ssmtp sur le serveur ou si c'est un fonctionnement normal de plxMyContact, l'expéditeur (From) du mail est l'user unix du serveur web, et non pas l'email renseigné dans le formulaire, normal ?
ça vient du paramètrage de ton serveur mail. J'ai déjà constaté ce phénomène chez certains hébergeurs et impossible de passer outre à partir du code php. Si tu as la main sur la config de ton serveur tu devrais pouvoir changer ça. Je ne me rappelle plus en revanche à quel endroit ça se configure (pour apache)
ça vient du paramètrage de ton serveur mail. J'ai déjà constaté ce phénomène chez certains hébergeurs et impossible de passer outre à partir du code php. Si tu as la main sur la config de ton serveur tu devrais pouvoir changer ça. Je ne me rappelle plus en revanche à quel endroit ça se configure (pour apache)
OK, donc ça vient de ssmtp. Qui est très limité niveau paramètre à ce niveau.
Je vais donc devoir installer Postfix sur le serveur. Sauf si je me rappelle comment configurer sendmail-submit. ;-)
Sinon je n'utilise pas Apache mais Nginx, et je ne pense pas que ça ai une incidence là dessus.
le 5e paramètres concerne des paramètres additionnels (X-mailer:, X-ceQueJeVeux: par exemple). le 4e paramètre les headers supplémentaires permettent de manipuler From. exemple sendMail dans class.utils:
$headers = "From: ".$name." <".$from.">\r\n";
$headers .= "Reply-To: ".$from."\r\n";
...
return mail($to, $subject, $body, $headers);
alors pour mon soucis de from, ça venait bien de ssmtp, et même comportement avec sendmail-submit.
Je viens d'installer Postfix, et le from est bien celui fixé dans les formulaires des deux plugins contact.
Par contre le Return-Path reste fixé sur l'user système qui envoie le mail.
À noter qu'il n'y a pas besoin de démarrer le service Postfix pour pouvoir envoyer le mail.
Il faut évidement (sous FreeBSD) activer Postfix dans mailer.conf pour remplacer la commande sendmail (pareil avec ssmtp d'ailleurs).
> j'ai une ancienne version de PluXml qui a cela, et un site qui tourne dessus, et c'est très très pratique :
> Je retrouve en ligne tous les mails transmis depuis des années, sagement rangés dans un dossier
si tu as un ancien fichier à m'envoyer, j'aimerai bien m'en inspirer car c'est une fonctionnalité nécessaire pour moi, free ou autres, je ne fais guère confiance aux envois via mail(), car même si ça part bien des hébergeurs, ça peut-être aussi blacklisté côté destinataires.
@Stéphane
Quelle est la version php5 minimale requise pour pluXml?
Merci encore Kyodev, ça marche parfaitement avec les accents en rajoutant tes paramètres dans l'entête
Cette fonction timer fiabilise l'envoi des mails par Free, si le mail n'est pas traité (trop rapide), la page d'erreur s'affiche
EDIT : il y a par contre un autre soucis : l'adresse mail d'envoi est toujours celle de l'hébergeur (Free), et pas celle laissée sur le formulaire
Bonjour,
Merci pour ce plug-in,
Petit soucis quand j'essaye de modifier l'ordre des champs du formulaire : mettre la question personnalisée après le motif et le message par exemple.
J'ai inversé les champs dans form.contact.php mais plus rien ne s'affiche au final. Il faut faire autre chose ?
Serait ce possible aussi d'avoir la possibilité d'ajouter une question et avoir la réponse en plusieurs choix, par bouton cliquable ? C'est à dire comme un QCM ?
super ce contact
mais serait-il possible de :
( si j'ai bien compris )
- le plugin initial crée une page dont l'url est php?contact
- celui-ci : comment faire pour qu'il crée un page 'Contact Pro', par exemple, vers une url php?contact-pro de manière à pouvoir conserver les 2 plugins et s'en servir selon le besoin de l'utilisateur ? @+
si je pouvais avoir 'une' solution ce serait 'top' depuis le temps @+
Bonsoir, quelqu'un as-t-il mis a jour supercontact pour la version 5.5 . merci par avance.
j'ai cette erreur:
Notice: Undefined variable: site in C:\wamp\www\pluxml5.5\plugins\superContact\form.contact.php on line 230 Call Stack #TimeMemoryFunctionLocation 10.0008154072{main}( )..\index.php:0 20.07291887208include( 'C:\wamp\www\pluxml5.5\themes\defaut\static.php' )..\index.php:55 30.09101914288plxShow->staticContent( )..\static.php:21 40.09312056024require( 'C:\wamp\www\pluxml5.5\plugins\superContact\form.contact.php' )..\class.plx.show.php:1471 " />
@jack31
Bonjour à toi
Lorsque l'on clique sur ' Lire la suite ' on est redirigé vers " http://www.lamaisondunet.org/article7/vous-voulez-vendre-de-l-hebergement " .... une page en erreur et donc introuvable !!! bon courage pour la correction @mitiés
bg
+ j'ai voulu mettre ceci sur ton site ( dans les commentaires du dernier article actuel = vérification antispam en erreur sans arrêt )
@jack31
Bonjour à toi
Lorsque l'on clique sur ' Lire la suite ' on est redirigé vers " http://www.lamaisondunet.org/article7/vous-voulez-vendre-de-l-hebergement " .... une page en erreur et donc introuvable !!! bon courage pour la correction @mitiés
bg
+ j'ai voulu mettre ceci sur ton site ( dans les commentaires du dernier article actuel = vérification antispam en erreur sans arrêt )
@ Houps !
Je viens de laisser tomber ce nom de domaine et je ne sais même plus de qul site sous Pluxml il s’agit. il y en a tant.
Réponses
sur mon hébergeur gratuit (Free), quand le mail ne part pas, il n'y a pas de délai de traitement ...
Quand ça fonctionne, il y a un petit délai d'environ 2 seconde
Comment pourais je mettre ce petit timer, qui s'il n'est pas validé, envoie le message de la page d'erreur ?
J'ai trouvé ce code mais ou le placer dans la fonction mail de ce script superContact ?
Merci pour ce script et pour PluXml, vraiment formidable
pas essayé, mais je mettrais ce code dans un fichier placé dans le même répertoire que superContact.php & form.contact.php, par exemple plugins/superContact/mailFree.php
dans dans plugins/superContact/form.contact.php, vers la ligne 167, remplacer: par ce code: si ça fonctionne, je regarderais comment utiliser: $plxPlugin->getParam('email_cc')."\n".$plxPlugin->getParam('email_bcc')
je testerais comme paramètre $additional_headers, j'imagine, à tester sur free.
Je vais essayer ton code pour l'insertion dès que possible et je reviens avec des nouvelles
Il faut bien entendu que je tombe sur la période ou le serveur de mail n'envoie rien (mais sans signaler d'erreur), aléatoirement.
A++
Dan
EDIT :
Bon zut
j'ai bien tout vérifié mais j'ai ça :
Fatal error: Call to undefined function mailFree() in (suivi de l'adresse)
include_once (__DIR__.'/mailFree.php');
et dans le fichier mailFree.php, le code que tu as indiqué, contenant la fonction mailFree?
Si ta version de php est inférieure utilise plutôt
Consultant PluXml
Ancien responsable du projet (2010 à 2018)
Et le timer semble bien fonctionner, j'ai eu une première page d'erreur car la fonction mail n'a pas été traitée convenablement (affichage très rapide), puis en réessayant une seconde fois, le formulaire a bien été traité, et m'est parvenu
Par contre je n'ai plus le même charset et les accents ne passent plus correctement ...
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
AVANT :
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 8bit
J'aimerai bien cependant implanter une fonction de sauvegarde des mails sur le serveur, j'ai une ancienne version de PluXml qui a cela, et un site qui tourne dessus, et c'est très très pratique : Je retrouve en ligne tous les mails transmis depuis des années, sagement rangés dans un dossier (et notamment ceux qui ne sont jamais partis par malfonction du serveur de mail)
Merci encore,
... et j'apprends petit à petit.
vivement les pages persos Révolution
@Dan
je ne sais pas ce que free accepte comme $additional_headers, $additional_parameters...
peut-être essayer en passant à mailFree
> j'ai une ancienne version de PluXml qui a cela, et un site qui tourne dessus, et c'est très très pratique :
> Je retrouve en ligne tous les mails transmis depuis des années, sagement rangés dans un dossier
si tu as un ancien fichier à m'envoyer, j'aimerai bien m'en inspirer car c'est une fonctionnalité nécessaire pour moi, free ou autres, je ne fais guère confiance aux envois via mail(), car même si ça part bien des hébergeurs, ça peut-être aussi blacklisté côté destinataires.
@Stéphane
Quelle est la version php5 minimale requise pour pluXml?
un petit bug avec l'archive zip du plugin, lorsqu'on utilise le plugin MyPluginDownloader et qu'on télécharge l'archive son contenu est extrait à la racine du répertoire /plugins et non pas dans son répertoire plugins/superContact.
Sur ce… je vais tester, car j'étais justement en train de chercher un formulaire un peu plus évolué.
Un petite question car je ne sais pas si ça vient du fait que j'utilise (pour l'instant) ssmtp sur le serveur ou si c'est un fonctionnement normal de plxMyContact, l'expéditeur (From) du mail est l'user unix du serveur web, et non pas l'email renseigné dans le formulaire, normal ?
à priori c'est programmé pour utiliser le nom et le mail du formulaire
plxUtils::sendMail($nom_expediteur,$mail,...
public static function sendMail($name, $from,...
Je vais essayer en installant Postix, ou en utilisant sendmail-submit pour voir si ça ne viendrait pas de ssmtp.
Le serveur web tournant dans une jail FreeBSD je n'avais (à priori) pas besoin de MTA.
Consultant PluXml
Ancien responsable du projet (2010 à 2018)
OK, donc ça vient de ssmtp. Qui est très limité niveau paramètre à ce niveau.
Je vais donc devoir installer Postfix sur le serveur. Sauf si je me rappelle comment configurer sendmail-submit. ;-)
Sinon je n'utilise pas Apache mais Nginx, et je ne pense pas que ça ai une incidence là dessus.
Consultant PluXml
Ancien responsable du projet (2010 à 2018)
Alors visiblement, ça viendrait du Safe Mode activé :
http://www.php.net/manual/fr/features.safe-mode.functions.php
mail() : Si le Safe Mode est actif, le 5ème paramètre est désactivé (note : uniquement affecté depuis PHP 4.2.3)
$headers = "From: ".$name." <".$from.">\r\n";
$headers .= "Reply-To: ".$from."\r\n";
...
return mail($to, $subject, $body, $headers);
alors pour mon soucis de from, ça venait bien de ssmtp, et même comportement avec sendmail-submit.
Je viens d'installer Postfix, et le from est bien celui fixé dans les formulaires des deux plugins contact.
Par contre le Return-Path reste fixé sur l'user système qui envoie le mail.
À noter qu'il n'y a pas besoin de démarrer le service Postfix pour pouvoir envoyer le mail.
Il faut évidement (sous FreeBSD) activer Postfix dans mailer.conf pour remplacer la commande sendmail (pareil avec ssmtp d'ailleurs).
Merci encore Kyodev, ça marche parfaitement avec les accents en rajoutant tes paramètres dans l'entête
Cette fonction timer fiabilise l'envoi des mails par Free, si le mail n'est pas traité (trop rapide), la page d'erreur s'affiche
EDIT : il y a par contre un autre soucis : l'adresse mail d'envoi est toujours celle de l'hébergeur (Free), et pas celle laissée sur le formulaire
Merci pour ce plug-in,
Petit soucis quand j'essaye de modifier l'ordre des champs du formulaire : mettre la question personnalisée après le motif et le message par exemple.
J'ai inversé les champs dans form.contact.php mais plus rien ne s'affiche au final. Il faut faire autre chose ?
Serait ce possible aussi d'avoir la possibilité d'ajouter une question et avoir la réponse en plusieurs choix, par bouton cliquable ? C'est à dire comme un QCM ?
Du genre comme un sondage ?
Merci !
[Edit : problème réglé avec l'aide de Stéphane ici : http://forum.pluxml.org/viewtopic.php?id=4936]
je teste actuellement ce plugin et il manque un 'type="text" ' dans le input de skype Il serait bien de le rajouter, certain framework CSS en ont besoin, tel que SKEL.CSS, comme dans cet exemple
@+
mes sites principaux : fonds d'écran gratuits - longue traîne - référencer votre site - brocante en ligne -
j'ai cette erreur:
Notice: Undefined variable: site in C:\wamp\www\pluxml5.5\plugins\superContact\form.contact.php on line 230 Call Stack #TimeMemoryFunctionLocation 10.0008154072{main}( )..\index.php:0 20.07291887208include( 'C:\wamp\www\pluxml5.5\themes\defaut\static.php' )..\index.php:55 30.09101914288plxShow->staticContent( )..\static.php:21 40.09312056024require( 'C:\wamp\www\pluxml5.5\plugins\superContact\form.contact.php' )..\class.plx.show.php:1471 " />
Comment faire donc ?
@+
mes sites principaux : fonds d'écran gratuits - longue traîne - référencer votre site - brocante en ligne -
Hello Bg62
Je suis en train de le tester sur la 5.6 avec Version de PHP : 5.5.38 et cela fonctionne.
ça marche pas pour moi en 5.6
que faire ???
Bonjour à toi
Lorsque l'on clique sur ' Lire la suite ' on est redirigé vers " http://www.lamaisondunet.org/article7/vous-voulez-vendre-de-l-hebergement " .... une page en erreur et donc introuvable !!! bon courage pour la correction
@mitiés
bg
+ j'ai voulu mettre ceci sur ton site ( dans les commentaires du dernier article actuel = vérification antispam en erreur sans arrêt )
mes sites principaux : fonds d'écran gratuits - longue traîne - référencer votre site - brocante en ligne -
@ Houps !
Je viens de laisser tomber ce nom de domaine et je ne sais même plus de qul site sous Pluxml il s’agit. il y en a tant.
Où as-tu trouvé ce lien ?
Je cherche un lien ou l'archive de ce plugin. Quelqu'un peu m'aider ?
Merci.
Cordialement,
DPFPIC