Forum ZitePLUS

La communauté des utilisateurs du CMS ZitePLUS

Vous n'êtes pas identifié(e).

#26 14/11/2009 22:07:35

Fredo42
Membre
Inscription : 03/10/2009
Messages : 470
Site Web

Re : [hors zite+] fonction mail() chez 1&1

davyk a écrit :

beau boulot wink

faut pas exagérer non plus....
tu t'es cassé la tête à me trouver des codes et je n'ai pas été foutu de lire les commentaires que tu avais mis!!

// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule


Mieux vaut poser une question et passer pour un con, que se taire et le rester...

Hors ligne

#27 04/02/2010 01:54:04

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : [hors zite+] fonction mail() chez 1&1

bonsoir
moi qui suis un novice en php j'ai récup le code de fredo42 pour l'essayer à ma sauce
j'ai donc rajouter un texte devant le sujet histoire de filtrer les mail reçus du zite (from zite)
le nom du posteur qui apparait dans le mail
ainsi qu'une case à coché dont la réponse arrive dans le mail

<?php
$destinataire = 'tonmail@tonFAI';
$sujet = $_POST['sujet'];
$email=$_POST['email'];
$email2=$_POST['email2'];
$nom=$_POST['nom'];
$message=$_POST['message'];
$newsletter=$_POST['newsletter'];
$headers = 'From: <'.$email.'>' . "\r\n";

$messerr='';
if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
  $messerr=$messerr."Adresse mail considérée comme NON valide.".'<br>';
}
if ($email!=$email2) {
  $messerr=$messerr."Les 2 adresses mails ne sont pas identiques.".'<br>';
}
if ($sujet=='') {
  $messerr=$messerr."Merci de mettre un sujet.".'<br>';
}
if ($message=='') {
  $messerr=$messerr."Le but de cette page est d'envoyer un message!! Alors mettez-en un! Merci.";
}
if ($nom=='') {
  $messerr=$messerr."Merci d'indiquer votre nom.";
}
if (isset($_POST['envoi']))
  {
  if ($messerr == '')
    {
    $message = html_entity_decode($message);
    $message = str_replace('\'',"\'",$message);
    $message = str_replace('’',"\'",$message);
    $message = str_replace('<br>','',$message);
    $message = str_replace('<br />','',$message);
    $message ="message de ".$nom." "."\n".$message;
$message ="newsletter ".$newsletter." "."\n".$message;
    if (mail($destinataire, "from zite " .$sujet, $message, $headers))
      {
      echo "L'envoi du mail a enfin réussi!!! BRAVO."."\n";
      }
    else
      {
      echo "L'envoi du mail a échoué, veuillez réessayer SVP."."\n";
      }
    }
  else
    {
    echo '<h3><font color=red>'.$messerr.'</font></h3>';
    }
  }

if (($messerr) || (!isset($_POST['envoi'])))
  {
        // afficher le formulaire

echo '        <h1>Formulaire de contact</h1>'."\n";
echo '<th colspan="2">Tous les champs sont obligatoires.</th><br><br>'."\n";
echo '<form action="" method="post" >'."\n";
echo '<table>'."\n";
echo '  <tr><td class="info">Votre email : </td><td class="champ"><input name="email" type="text" size="66"></td></tr>'."\n";
echo '  <tr><td class="info">Confirmez votre email : </td><td class="champ"><input name="email2" type="text" size="66" value="et oui encore une fois..."></td></tr>'."\n";

echo '  <tr><td class="info">Votre Nom : </td><td class="champ"><input name="nom" type="text" size="66"></td></tr>'."\n";

echo '  <tr><td class="info">Sujet : </td><td class="champ"><input name="sujet" type="text" size="66"></td></tr>'."\n";
echo '  <tr>'."\n";
echo '    <td class="contenu">Votre message</td>'."\n";
echo '  <td class="contenant"><textarea name="message" cols="50" rows="20"></textarea></td></tr>'."\n";
echo '  <tr><th colspan="1">'."\n";
echo '    <td class="lesboutons"><input type="reset" value="Annuler">'."\n";
echo '  <input type="submit" name="envoi" value="Envoyer"></td></th></tr>'."\n";
echo '</table>
<p><input type="checkbox" name="newsletter" id="newsletter" /> <label for="newsletter">souhaitez vous recevoir notre newsletter</label></p></form>'."\n";
  }
?>

voila après quelques heures de traduction et de test j'ai réussi
ci besoin ça peut aidé
si mon rajout n'est pas propre merci de me le signaler que je ne partage pas de la *****

Dernière modification par snypi (04/02/2010 18:42:47)


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#28 04/02/2010 07:03:24

Fredo42
Membre
Inscription : 03/10/2009
Messages : 470
Site Web

Re : [hors zite+] fonction mail() chez 1&1

salut,
je suis pas un spécialiste en propeté php, mais du moment que ça marche ça me va!!
J'ai rajouté, après avoir posté le code, $sujet = html_entity_decode($sujet);
donc est-ce plus "propre" de mettre?:

if ($messerr == '')
    {
    $sujet = "from zite :" .html_entity_decode($sujet);
    $message = html_entity_decode($message);
    $message = str_replace('\'',"\'",$message);
    $message = str_replace('’',"\'",$message);
    $message = str_replace('<br>','',$message);
    $message = str_replace('<br />','',$message);
    $message = "message de ".$nom."\n".$message;
    $message = "newsletter ".$newsletter."\n".$message;
    if (mail($destinataire, $sujet, $message, $headers))

Pourquoi tu rajoutes un espace après $nom et $newsletter puisque tu met à la ligne avec "\n"?


Mieux vaut poser une question et passer pour un con, que se taire et le rester...

Hors ligne

#29 04/02/2010 10:15:58

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : [hors zite+] fonction mail() chez 1&1

Merci fredo je vais corriger le code
l'espace rajouter me servais à séparer les réponses du message !!
et quand j'ai découvert le retour à la ligne ."\n" j'ai oublier de les suprimés smile
pour te dire mon niveau en php smile

Dernière modification par snypi (23/02/2010 14:31:25)


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#30 28/01/2011 00:05:16

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : [hors zite+] fonction mail() chez 1&1

bonjour a tous
je remonte un vieux poste pour faire part d'un bug qui me turlupine smile
lorsque j'enregistre le code php de la fonction mail cela me vire les \ !
je vais passé par le fichier txt en direct je pense que cela vas marché mais bon y'a bien un chmilblik


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#31 30/01/2011 00:40:57

Atod
Membre
Inscription : 25/01/2011
Messages : 68
Site Web

Re : [hors zite+] fonction mail() chez 1&1

Bonjour,
Je suis pas sur de bien saisir ton problème.
Tu essaye de rentrer du code php par tinyMCE ? Et ca ne fait pas ce que tu souhaite?

Hors ligne

#32 30/01/2011 12:12:42

snypi
Moderateurs
Inscription : 11/03/2008
Messages : 1 235
Site Web

Re : [hors zite+] fonction mail() chez 1&1

bonjour, et merci je n'ai pas été très claire

je fait un site sous ziteplus avec la dernière beta
j'ai créer une page contact en php, j'édite la page contact en mode source (je ne sais si tinymce est chargé à ce moment)  et colle le code de  ce poste pour faire ma fonction mail
mais lorsque j'enregistre la page il me vire les "\" ce qui rend le code php non fonctionnel
exemple ."\n"; devient après enregistrement ."n";
alors pour faire ma page j'ai ouvert (en local) la page contact qui ce trouve dans le dossier zdata avec un éditeur de texte  coller le code et charger par FTP !!
cela fonctionne.

mais le problème est que tu ne peut pas intervenir en ligne sur le code sans le bousillé c'est un peu embêtant !!

Dernière modification par snypi (30/01/2011 12:16:03)


un zite+ associatif http://asso.gard.a.toi.free.fr
création de site internet dans le Gard et Ardèche http://www.creation-site-internet-gard.com/

Hors ligne

#33 30/01/2011 13:22:58

bpat85
Membre
Inscription : 18/01/2010
Messages : 77

Re : [hors zite+] fonction mail() chez 1&1

snypi a écrit :

bonjour, et merci je n'ai pas été très claire

je fait un site sous ziteplus avec la dernière beta
j'ai créer une page contact en php, j'édite la page contact en mode source (je ne sais si tinymce est chargé à ce moment)  et colle le code de  ce poste pour faire ma fonction mail
mais lorsque j'enregistre la page il me vire les "\" ce qui rend le code php non fonctionnel
exemple ."\n"; devient après enregistrement ."n";
alors pour faire ma page j'ai ouvert (en local) la page contact qui ce trouve dans le dossier zdata avec un éditeur de texte  coller le code et charger par FTP !!
cela fonctionne.

mais le problème est que tu ne peut pas intervenir en ligne sur le code sans le bousillé c'est un peu embêtant !!

Bizarre ton truc ...
Sur les qques sites Z+ que j'ai montés, et le dernier qui est en cours de création sur la b6, tous ont le même formulaire (données requises modifiées suivant le site) en php avec des lignes comme "$tete="From:Contact@amourdechiens\n";" et je n'ai pas de pb de "\" qui disparaissent.

Hors ligne

#34 30/01/2011 13:28:34

Atod
Membre
Inscription : 25/01/2011
Messages : 68
Site Web

Re : [hors zite+] fonction mail() chez 1&1

Hum, bizarre, j'ai testé chez moi avec la beta et ça marche. Autant il y avait un petit problème avec le code php dans la version précédente, autant dans la dernière beta, on peut mettre son code php, puis mettre la page en mode php et ça fonctionne.
Quel hébergeur utilise tu? 1&1? A tu testé en local avec le même code?
Je dirai problème de version de php. Quel est ta version de php (un petit phpinfo(); pour savoir)? Antérieur à 5.2 je suppose !

Si t'es sur 1&1 test ça dans le .htaccess à la raçine:
#  1 and 1 - Pour activer PHP5 enlever le # de la ligne suivante
#AddType x-mapp-php5 .php

Hors ligne

Pied de page des forums