WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Hjälp med mail () (https://www.wn.se/forum/showthread.php?t=34977)

kronblom 2009-02-06 16:32

Har precis börjat att lära mig PhP och har en mail formulär där jag önskar lite hjälp med att kunna bygga ut mail () så att, när jag får mailet från min hemsida så vill jag att den ser ut så som jag vill ha tex http://communityguide.se/layout2/bilder/mail.jpg . Jag har en grund script från webdesignskolan där jag vill lägga till.

Chran 2009-02-06 16:35

Det underlättar om du är lite mer specifik. Vad exakt behöver du hjälp med?

kronblom 2009-02-06 16:49

Citat:

Originally posted by Chran@Feb 6 2009, 17:35
Det underlättar om du är lite mer specifik. Vad exakt behöver du hjälp med?
En skrev till mig innan så är i mail.
Du kan inte lägga i flera variabler i funktionen MAIL() utan måste baka in
dem i samma variabel som
i exemplet jag gav dig tidigare:

$message = "meddelande: ".$message."
namn: ".$name."
adress: ".$address."
ärende: ".$subject."
email -- ".$email."
";

Detta skrevs innan från samma person.

Du kan få med den information du vill men då får du bygga vidare så att det
passar dina behov. Du
kan tex bygga vidare på "formmail.php" och lägga till mer information i
variabeln för själva
meddelandet "$message". Komplettera variabeln med den information du vill
ha. Så här kan det tex se
ut:

$message = "meddelande: ".$message."
namn: ".$name."
företag: ".$foretag."
ärende: ".$subject."
email -- ".$email."
";

Du måste själv ange alla variablerna som inte finns. Jag brukar tex hämta
information från servern
så här:

$ip = $_SERVER["REMOTE_ADDR"];
$datum = date("Y-m-d");
$time_local = date('G:i:s');


Det som jag vill lägga till är
klockan = $time_local = date('G:i:s');
ip-adress = $ip = $_SERVER["REMOTE_ADDR"];
adress: ".$address."

Chran 2009-02-06 16:59

Du gör ny rad med \r\n och lägger allt i en variabel som meddelandetext

t.ex.

$message = "Namn: ".$namn."\r\n Företag: ".$foretag. "\r\n Ärende: ".$subject."\r\n ". osv...

kronblom 2009-02-06 17:00

Citat:

Originally posted by Chran@Feb 6 2009, 17:59
Du gör ny rad med \r\n och lägger allt i en variabel som meddelandetext

t.ex.

$message = "Namn: ".$namn."\r\n Företag: ".$foretag. "\r\n Ärende: ".$subject."\r\n ". osv...

I mail() ?

Chran 2009-02-06 17:02

Ja, variabeln $message i mitt exempel innehåller all body-text. Alltså texten som syns i meddelandet.

Chran 2009-02-06 17:06

Alltså:

T.ex:
$to = mottagaradress
$subject = Ämnet
$message = Hela meddelandetexten
$headers = Läs på om headers

mail($to, $subject, $message, $headers);

kronblom 2009-02-06 17:08

Citat:

Originally posted by Chran@Feb 6 2009, 18:02
Ja, variabeln $message i mitt exempel innehåller all body-text. Alltså texten som syns i meddelandet.
Okej. I denna

// om formuläret är korrekt ifyllt skickas informationen
if (mail($to, $subject, $message ,"From: $email")) {


Eller någonstans i detta

if(get_magic_quotes_gpc()){
$name = stripslashes(trim($_POST["name"]));
$email = stripslashes(trim($_POST["email"]));
$address = stripslashes(trim($_POST["address"]));
$message = stripslashes(trim($_POST["message"]));
}
else{
$name = $_POST["name"];
$email = $_POST["email"];
$address = $_POST["address"];
$message = $_POST["message"];
}
// startar sessioner
$_SESSION['name'] = $name;
$_SESSION['email'] = $email;
$_SESSION['address'] = $address;
$_SESSION['message'] = $message;


Adressen till min kontakt sida är http://www.communityguide.se/layout2...select=contact

Jonas 2009-02-06 17:19

Notera att du MÅSTE tvätta allting som skall skickas med mail(), inte så värst svårt att skicka spam via mailformulär...

Notera även att PHP har en fördefinierad konstant som innehåller " \r\n ", PHP_EOL fungerar utmärkt för detta, (PHP_EOL == PHP End Of Line)

kronblom 2009-02-06 19:10

Citat:

Originally posted by Jonas@Feb 6 2009, 18:19
Notera att du MÅSTE tvätta allting som skall skickas med mail(), inte så värst svårt att skicka spam via mailformulär...

Notera även att PHP har en fördefinierad konstant som innehåller " \r\n ", PHP_EOL fungerar utmärkt för detta, (PHP_EOL == PHP End Of Line)

Jag använder även captcha sen är den krypterad med så vad jag vet och hört så ska den vara säkert från spam.


Alla tider är GMT +2. Klockan är nu 08:20.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson