Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Modification de la classe mime_mail [ Archives / Débutants ] (BananaTree)

mercredi 15 juin 2005 à 17:07:13 | Modification de la classe mime_mail

BananaTree

slt tout le monde.

j'utilise la classe mime_mail (ci desous) pour transmettre un mail depuis flash. coté flash pas de pb bien sur. mais en php, je misère ;-)
je voudrais savoir comment modifier la classe pour pouvoir changer la couleur de fond du mail.
et aussi, je voudrais eviter que le nom de fichier joint n'apparaisse sous la forme _._.monfichier.swf, mais plutôt nomQueJaiChoisi.swf

alors si une ame charitable se ballade dans le coin, merci davance

<?
class mime_mail
{
  var $parts;
  var $to;
  var $from;
  var $headers;
  var $subject;
  var $body;
  function mime_mail()
  {
    $this->parts = array();
    $this->to =  "";
    $this->from =  "";
    $this->subject =  "";
    $this->body =  "";
    $this->headers =  "";
  }
  function attach($message,$name,$ctype = '')
  {        
    if(empty($ctype)){  
      switch(strrchr(basename($name), ".")){
        case ".swf":  $ctype =  "application/swf";    break;
        case ".gz":   $ctype =  "application/x-gzip"; break;
        case ".tgz":  $ctype =  "application/x-gzip"; break;
        case ".zip":  $ctype =  "application/zip";    break;
        case ".pdf":  $ctype =  "application/pdf";    break;       
        case ".png":  $ctype =  "image/png";  break;
        case ".gif":  $ctype =  "image/gif";  break;
        case ".jpg":  $ctype =  "image/jpeg"; break;
        case ".txt":  $ctype =  "text/plain"; break;
        case ".htm":  $ctype =  "text/html";  break;
        case ".html": $ctype =  "text/html";  break;
        default:      $ctype =  "application/octet-stream"; break;
      }
    }
    $this->parts[] =
                    array (
                      "ctype" => $ctype,
                      "message" => $message,
                      "encode" => $encode,
                      "name" => $name
                    );
  }
  function build_message($part)
  {
    $message = $part[ "message"];
    $message = chunk_split(base64_encode($message));
    $encoding =  "base64";
    return  "Content-Type: ".$part[ "ctype"].
            ($part[ "name"]? "; name = \"".$part[ "name"]. "\"" :  "").
            "\nContent-Transfer-Encoding: $encoding\n\n$message\n";
  }
  function build_multipart()
  {
    $boundary =  "b".md5(uniqid(time()));
    $multipart =  "Content-Type: multipart/mixed; boundary = $boundary\n\nThis is a MIME encoded message.\n\n--$boundary";
    for($i = sizeof($this->parts) - 1; $i >= 0; $i--)
    {
      $multipart .=  "\n".$this->build_message($this->parts[$i]). "--$boundary";
    }
    return $multipart.=  "--\n";
  }
  function send()
  {
    $mime =  "";
    if (!empty($this->from))    $mime .=  "From: ".$this->from. "\n";
    if (!empty($this->headers)) $mime .= $this->headers. "\n";
    if (!empty($this->body))    $this->attach($this->body,  "",  "text/html");
    $mime .=  "MIME-Version: 1.0\n".$this->build_multipart();
    mail($this->to, $this->subject,  "", $mime);
  }
};
?>

mercredi 15 juin 2005 à 19:00:08 | Re : Modification de la classe mime_mail

malalam

Administrateur CodeS-SourceS
Hello,

la couleur de fond, ca ne va pas etre la, mais dans le formulaire que tu utilises pour creer le mail (ce sera dans le body du mail).

Le nom du fichier je ne pense pas que tu puisses de cette maniere.
C'est pareil, va se passe du cote du formulaire pour ecrire le mail et uploader le fichier a joindre.


mercredi 15 juin 2005 à 19:45:35 | Re : Modification de la classe mime_mail

Anthomicro

Réponse acceptée !
Salut,

pour modifier l'arrière plan il te faut un message au format html, bref en CSS comme une page html classique :
<html>
<!-- N'oublie pas le doctype XHTML -->
<head>
    <style type="text/css">
       body{
          background-color:#F0F0F0; //par exemple
       }
    </style>
</head>
<body>
    <p>paragraphe</p>
</body>
</html>


    mercredi 15 juin 2005 à 19:46:30 | Re : Modification de la classe mime_mail

    Anthomicro

    Ensuite pour le fichier (le nom du fichier) je dirais que tu dois modifier la variable $name dans ta fonction attach (à la fin)



      mercredi 15 juin 2005 à 21:04:36 | Re : Modification de la classe mime_mail

      BananaTree

      merci de vos réponses.
      en fait mon message est préformaté en html depuis flash.
      j'avais essayé <body bgcolor ='XXXXXX'>mon message</body>

      j'étais donc sur la bonne voie. je vais rééssayer avec les balises html et head (d'autant que l'intégration d'une feuille de style m'arrange bien)

      encore merci les gars

      @+ et bon code

      Pascal



      Cette discussion est classé dans : message, case, break, mime, ctype


      Répondre à ce message

      Sujets en rapport avec ce message

      Probléme avec script mail chez Free [ par SteufDu59 ] J'ai donc un formulaire avec la possibilité de joindre une image, donc en fichier joint, le script niveau formulaire est :if ($fonctionmail=="oui"){// Livre d'or [ par GillesWebmaster ] Salut à tous j'ai un prob avec mon livre d'or:je vous mets les fichiers ce serait sympa de jetter un oeil...------------------------------------------ Ca marchait, ça marche pu :'( [ par Inekman ] Bonjour à tous,J'ai écris une fonction qui renvoie une date avec 2 affichages possible en fonction du paramètre donné à la fonction.La fonction, la vo Signet en Php ? [ par dumbop84 ] pff .... c dur le PHP surtout quand on est pas prgrammeur .... mon probléme a moi c  que j'aimerai savoir si on peut faire des signer en php... j'ai u Liste à choix multiple... [ par Ang3lo ] Bonjour à tous,J'aimerai savoir quel est le code à inserer pour récupérer une donné venant d'une liste à chois multiple.Moi je met ça :switch ($source Un bug dans le script, quelqu'un voit la reponse? [ par benbax ] Voila le script : $dt=include("compteurDT.cpt"); //Contient le nombre x$msn=include("compteurMSN.cpt"); //Contient le nombre x$vnc=include("co problème avec id resource, non compris!!! [ par titigrou ] kikou!!j'ai un gros problème:j'ai un tableau ou je veux afficher le nom des voitures:for ($j=0;$j{ switch ($j) { case 0 : echo"".$voiture."" Le cas "Indifferent" dans les formulaires [ par islanmao ] Bonjour tout le monde !Je voudrais savoir comment on fait pour gérer le cas "indifférent" dans les formulairesEnfait j'ai une base de données sur les Afficher une page en fonction du jour [ par Rimb0 ] Bonjour à tous ! Comme le précise le titre de ce post, je cherche comment il serait possible d'afficher une page en fonction du jour ! Voici le scrip Une erreur que je n'arrive pas à corriger ... [ par PascalCmoa ] Bonjour à tous , Voila, je suis en train de développer un site en PHP/MySQL. Dans l'un de mes scripts, j'interroge ma base de données, jusqu'ici tout


      Nos sponsors

      Sondage...

      CalendriCode

      Juillet 2009
      LMMJVSD
        12345
      6789101112
      13141516171819
      20212223242526
      2728293031  

      Consulter la suite du CalendriCode

      Téléchargements

      Comparez les prix Nouvelle version

      Photothèque Nouveau !



      Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
      CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
      CodeS-SourceS.com© est une marque déposée tous droits réservés
      Temps d'éxécution de la page : 0,577 sec

      Google Coop CodeS-SourceS Google Coop CodeS-SourceS


      Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.