Avatar billede pstidsen Novice
09. februar 2012 - 12:58 Der er 11 kommentarer og
1 løsning

Billede i MIME mail

Hvorfor får jeg bare en hvid kasse med et rødt kryds udaf at skrive: <img src='http://dl.dropbox.com/u/21887805/musik.jpg' />? Hvordan indsætter man et billede i MIME mail?

PS: Lad være med at skrive "Brug php mailer i stedet", for det er jeg ikke interesseret i! Vil lave det selv og lære af det.
Avatar billede Jonask95 Nybegynder
09. februar 2012 - 13:50 #1
Har selv haft samme problem, endte dog med at fixe det..

Fandt det her link: http://www.timeatlas.com/email/general/create_image_signatures_in_windows_mail_or_live_mail

kan ikke huske om det var det der gjorde det, da jeg har slettet filen, men det er da forsøget hver.
Jeg brugte Windows Live Mail, ved ikke om det også er det du henviser til med "MIME"
Avatar billede ramad Praktikant
09. februar 2012 - 13:53 #2
Har du prøvet med:
<img src="http://dl.dropbox.com/u/21887805/musik.jpg" />

altså " istedet for '?
Avatar billede pstidsen Novice
09. februar 2012 - 14:08 #3
#1: Du ved hvis ikke hvad MIME er... Det her er MIME:
$eol = "\r\n"; // Som beskrevet i RFC

$formularheaders = "From: $hjemmeside <$afsendermail>".$eol;
$formularheaders .= "MIME-Version: 1.0".$eol; // fortæller at det er en MIME mail - f.eks. HTML indhold
$formularheaders .= "Content-type: text/html; charset=ISO-8859-1". $eol;

#2: Det kan man jo ikke for så lukker du jo variablen ;)
Avatar billede Jonask95 Nybegynder
09. februar 2012 - 14:12 #4
Så tror jeg bare du ser bort fra min kommentar ;D
Avatar billede NielsErikP Mester
11. februar 2012 - 00:10 #5
Hej...

#2: Det kan man jo ikke for så lukker du jo variablen ;) ... Jamen så brug \" , så lukkes den da ikke :-)
Avatar billede pstidsen Novice
11. februar 2012 - 00:20 #6
Den kendte jeg ikke, men det virker desværre stadig ikke... I stedet for det røde kryds ser det sådan her ud: http://gratisupload.dk/billede/thumb/673653/ Det er et billede taget fra mit mailprogram ;)
Avatar billede NielsErikP Mester
11. februar 2012 - 01:38 #7
Hej...

Det roder lidt rundt i en stresset hjerne lige nu :-) tænker lidt på da jeg var ved at lave CAPTCHA havde jeg samme problem.... hmm... hvordan ser resten af din PHP kode ud??
Avatar billede pstidsen Novice
11. februar 2012 - 12:25 #8
Her kommer den (mailadresser er censureret):
<?php
$afsendermail = "xxxxx@xxxxx.dk";
$hjemmeside = "xxxxxxxxx.dk";
$mail = "xxxxx@xxxxx.dk";
$viderestil = "svar.htm";

/* Her hentes oplysningerne fra de udfyldte felter */
$Kontakt = $_REQUEST['Kontakt'] ;
$email="E-mail";
$kopi = $_REQUEST['kopi'];
$Til = $_REQUEST['Til'] ;
$Dag = $_REQUEST['Dag'] ;
$Dat = $_REQUEST['Dat'] ;
$Mdr = $_REQUEST['Mdr'] ;
$klokken = $_REQUEST['klokken'] ;
$Spille_for = $_REQUEST['Spille_for'] ;
$Boadressen = $_REQUEST['Boadressen'] ;
$Postnummer = $_REQUEST['Postnummer'] ;
$Besked = $_REQUEST['Besked'] ;
$Aar = $_REQUEST['Aar'] ;
$Telefon = $_REQUEST['Telefon'] ;

$emne="Forespørgsel vedr. $Dag d. $Dat $Mdr $Aar";

$headers="From: $Kontakt <$email>\r\n";

$eol = "\r\n"; // Som beskrevet i RFC

$formularheaders = "From: $hjemmeside <$afsendermail>".$eol;
$formularheaders .= "MIME-Version: 1.0".$eol; // fortæller at det er en MIME mail - f.eks. HTML indhold
$formularheaders .= "Content-type: text/html; charset=ISO-8859-1". $eol;

/* Her samles afsenderens navn, mailadresse og besked i en enkelt variabel */
$oplysninger="Forespørgsel på $Til - www.xxxxx.dk:
$Dag d. $Dat $Mdr $Aar, kl. $klokken
Spille for: $Spille_for
Boadressen: $Boadressen
Postnummer: $Postnummer
Kontakt: $Kontakt
E-mail: $email
Telefon: $Telefon
Besked: $Besked";

/* Her samles oplysningerne til afsenderens kopi af mailen */
$kopimail="<!DOCTYPE html>
<html>
<head>
    <meta http-equiv='content-type' content='text/html; charset=ISO-8859-1'/>
</head>
<body>
<img src\"http://xxxxxxx/Pstidsen/billede.jpeg\" />
<h1>Til: $Kontakt</h1><br>
Fra: www.xxxxx.dk<br>
Du har sendt en forespørgsel vedrørende
$Dag d. $Dat $Mdr $Aar, kl. $klokken<br>
Spille for: $Spille_for<br>
Boadressen: $Boadressen<br>
Postnummer: $Postnummer<br>
Kontakt: $Kontakt<br>
E-mail: $email<br>
Telefon: $Telefon<br>
Besked: $Besked<br>
Vi sender nogle prøver på sange!<br>
venlig hilsen<br>
xxxxx
";

  /* Her sendes til modtageradressen */
  mail($mail, $emne, $oplysninger, $headers);

  /* Her sendes en kopimail til afsenderen */
  mail($email, $emne, $kopimail, $formularheaders);

/* Når mailen er sendt, viderestilles til denne hjemmeside */
header("Location: $viderestil");
?>

Problemet er vel at jeg siger at content er text/html
$formularheaders .= "Content-type: text/html; charset=ISO-8859-1". $eol;
og derfor ikke kan sende billeder hvis content-type er image/jpeg (eller hvad filtypen nu er)?
Avatar billede pstidsen Novice
11. februar 2012 - 12:52 #9
Jeg har kigget på en mail jeg fik fra Western Digital hvor de havde deres logo. De bruge bare et ganske almindeligt <img> tag med attributten src. Hvis jeg så åbnede det billede i browseren, så var der også et script:
<script>(function() {if (window.donotrun)return;var img = document.querySelector('img');document.title = window.location.pathname.match(/([^\/]*)\/*$/)[1];var zoomX;var zoomY;function zoomIn() {document.body.className = 'zoom';window.scrollTo(zoomX + img.offsetLeft - window.innerWidth/2,zoomY + img.offsetTop - window.innerHeight/2);}function zoomOut() {zoomX = window.scrollX + window.innerWidth/2 - img.offsetLeft;zoomY = window.scrollY + window.innerHeight/2 - img.offsetTop;document.body.className = 'contain';}var interval = setInterval(function() {if (img.naturalWidth &amp;&amp; img.naturalHeight) {clearInterval(interval);document.title += ' ('+img.naturalWidth+'\u00d7'+img.naturalHeight+')';var padding = 2*parseInt(getComputedStyle(document.body).padding, 10);var s = document.querySelector('style[media]');s.media = '(max-width:' + (img.naturalWidth + padding) + 'px),(max-height:' + (img.naturalHeight + padding) + 'px)';zoomX = img.naturalWidth/2;zoomY = img.naturalHeight/2;} else if (img.error) {clearInterval(interval);}}, 100);img.onclick = function(e) {var s = getComputedStyle(img);if (s.cursor == 'zoom-in') {zoomX = e.offsetX;zoomY = e.offsetY;var clientAspect = img.clientWidth/img.clientHeight;var naturalAspect = img.naturalWidth/img.naturalHeight;var scale;if (naturalAspect > clientAspect) {var displayHeight = img.clientWidth/naturalAspect;zoomY -= (img.clientHeight - displayHeight)/2;scale = img.clientWidth/img.naturalWidth;} else {var displayWidth = img.clientHeight*naturalAspect;zoomX -= (img.clientWidth - displayWidth)/2;scale = img.clientHeight/img.naturalHeight;}zoomX /= scale;zoomY /= scale;zoomIn();} else if (s.cursor == 'zoom-out') {zoomOut();}};window.onkeypress = function(e) {if (e.keyCode == 13 &amp;&amp; !e.ctrlKey &amp;&amp; !e.altKey &amp;&amp; !e.shiftKey &amp;&amp; !e.metaKey) {var s = getComputedStyle(img);if (s.cursor == 'zoom-in')zoomIn();else if (s.cursor == 'zoom-out')zoomOut();e.preventDefault();}};var drag;window.onmousedown = function(e) {if (e.button == 0 &amp;&amp; !e.ctrlKey &amp;&amp; !e.altKey &amp;&amp; !e.shiftKey &amp;&amp; !e.metaKey &amp;&amp; document.body.className == 'zoom')drag = {screenX: e.screenX,screenY: e.screenY,scrollX: window.scrollX,scrollY: window.scrollY};};window.onmouseup = function(e) {img.style.cursor = '';drag = undefined;};window.onmousemove = function(e) {if (!drag) return;img.style.cursor = 'move';window.scrollTo(drag.scrollX + drag.screenX - e.screenX,drag.scrollY + drag.screenY - e.screenY);};})();</script>

Du kan selv se siden her: http://support.wdc.com/images/wdlogo.gif
Avatar billede pstidsen Novice
11. februar 2012 - 12:55 #10
Hov, sådan et script er der ved alle billedfiler i browser...
Avatar billede pstidsen Novice
11. februar 2012 - 13:03 #11
Jamen hvor er det bare fail! Jeg er da en stor klovn!

Så har jeg brugt dagevis på at få det til at virke og så virker det ikke fordi jeg har glemt et lighedstegn efter src. Havde bare skrevet src'http://www.hjemmeside.dk/Pstidsen/billede.jpeg'. Flot Peter...

Smid et svar. De her points gider jeg ikke have selv... Så dum man kan være... :s
Avatar billede NielsErikP Mester
11. februar 2012 - 23:22 #12
Hej...

Jamen du løste det jo sådan set selv... men okay "Svar"  :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester