webForumDet fria alternativet

php mail

10 svar · 464 visningar · startad av jlee

jleeMedlem sedan dec. 2002378 inlägg
#1

Använder detta för att skicka mail på en sajt:

<?php

$to = "minepost@epost.se";
$from = $_POST["email"];
$subject = $_POST["subject"];
$postnr = $_POST["postnr"];
$adress = $_POST["adress"];
$ort = $_POST["ort"];
$name = $_POST["name"];
$message = $_POST["message"];
$d = $_POST["d"];
$f = $_POST["f"];
$p = $_POST["p"];

if (mail($to, $subject, $message,  "From: $name <$from>"))

echo nl2br("<h2>Ditt meddelande har skickats!</h2> 
<b>mottagare:</b> $to
<b>ämne:</b> $subject
<b>meddelande:</b>
$message
");

else
echo "Det gick inte att skicka ditt meddelande";

?>

Detta funkar men det som visas i mailboxen är ju from, subject och messet men inte övriga parametrar. Testat lägga till de andra men det funkar inte.
Vad ska ändras i >>

if (mail($to, $subject, $message,  "From: $name <$from>"))

för att det ska funka?

The_HulkMedlem sedan juni 20031 837 inlägg
#2

förstår inte riktigt vad ditt problem är.
vad är det som inte fungerar?

TheMagnusMedlem sedan juli 2006461 inlägg
#3

För att få med de andra variablerna måste du lägga till dessa i $message-variabeln eftersom tredje parametern i mail-funktionen ska innehålla meddelandet som visas i inkorgen..

jleeMedlem sedan dec. 2002378 inlägg
#4

hur gör jag detta?

TheMagnusMedlem sedan juli 2006461 inlägg
#5

Skapa en variabel som innehåller de värden som du vill ha med i meddelandet. Som det är nu så lägger du varje värde i en egen variabel.

http://www.php.net/manual/sv/function.mail.php

The_HulkMedlem sedan juni 20031 837 inlägg
#6

testa följande:

<?php

$to = "minepost@epost.se";
$from = $_POST["email"];
$subject = $_POST["subject"];
$postnr = $_POST["postnr"];
$adress = $_POST["adress"];
$ort = $_POST["ort"];
$name = $_POST["name"];
$message = $_POST["message"];
$d = $_POST["d"];
$f = $_POST["f"];
$p = $_POST["p"];

$body = nl2br("<h2>Ditt meddelande har skickats!</h2> 
<b>mottagare:</b> $to
<b>ämne:</b> $subject
<b>meddelande:</b>
$message
");

if (mail($to, $subject, $body,  "From: $name <$from>"))
echo nl2br("<h2>Ditt meddelande har skickats!</h2> 
<b>mottagare:</b> $to
<b>ämne:</b> $subject
<b>meddelande:</b>
$message
");

else
echo "Det gick inte att skicka ditt meddelande";

?>

så kan du själva fylla på med parametrarna i $body.

TheMagnusMedlem sedan juli 2006461 inlägg
#7

The_Hulk skrev:

testa följande:

kod

så kan du själva fylla på med parametrarna i $body.

Ska du formatera mailet med html-kod så måste du även ha med headers för detta:

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
jleeMedlem sedan dec. 2002378 inlägg
#8

Tack nu funkar det!

jleeMedlem sedan dec. 2002378 inlägg
#9

Headers vill dock inte funka...exakt var ska de skrivas in? blir fortf taggar med i mailet

@ndersMedlem sedan juni 200032 969 inlägg
#10

Underskatta icke manualen på php.net.

http://se.php.net/manual/sv/function.mail.php

Där ser du exempel på hur man använder headers. "From"-delen är alltså det du skickar in i headers, så lägg till så alla headers hamnar där.

jleeMedlem sedan dec. 2002378 inlägg
#11

kan inte få det att funka. Svårt att förstå hur man ska göra enligt manualen om man är ganska ny på php

131 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)