webForumDet fria alternativet

Fråga om PHP - mailfunktion

8 svar · 419 visningar · startad av Shaadow

ShaadowMedlem sedan apr. 200632 inlägg
#1

Tjenare!

Har precis börjat hålla på med PHP, men kan inte så mycket nu :)
Har haft en PHP bok hemma förut, men den var dock lånad från bibblan.
Sen nu har jag glömt bort alltihopa, därför vänder jag mig till er. :)

Jag har ett kontaktscript på min sida, i formtaggen har jag action="send.php".
Men, vad är det man ska skriva i send.php för att mailet ska skickas iväg till min e-post?

Tacksam för snabba svar :)

Mvh
Shaadow

PeddaMedlem sedan juni 20006 032 inlägg
#2

postar lite kod från ett gammalt projekt, så har du iaf något att utgå ifrån.

<?php
session_start();

include('connect.php');

$info = mysql_query("SELECT epost FROM ".$mysql_prefix."installningar WHERE mid=1") or die ("Kunde inte hämta epostadress.");
$kontakt = mysql_fetch_assoc($info);
	
if (isset($_POST['feedback'])) {
	// Skicka ett mail till mig
	$fromname = "Noreply";
	$fromadress = "".$kontakt['epost']."";
	$toadress = "min@mail.com";
	$subject = "Feedback";
	$message = "".$_POST['meddelande']."";
	$info = "Från: ".@$cur_user['namn']."\n:".$_SERVER['HTTP_REFERER']."\n-------------------\n\n\n";
	mail("$toadress", "$subject", "$info $message",
     "From: {$kontakt['epost']}\r\n" .
     "Reply-To: {$kontakt['epost']}\r\n" .
     "X-Mailer: PHP/" . phpversion());

	header("Location: kontrollpanel.php?info=tackfeedback");
	exit;
}
?>
ShaadowMedlem sedan apr. 200632 inlägg
#3

Är det allt som ska stå i send.php?
Om jag glömde säga det, så har jag glömt all php jag lärt mig, förutom echo :)
Och sen kom jag inte riktigt så långt, när jag höll på med det :)
Skulle nog behöva lite mer beskrivet, tack annars.

PeddaMedlem sedan juni 20006 032 inlägg
#4

Det behöver inte ens vara så mycket egentligen om man inte vill använda extra headers som Reply-To address t.ex

Kolla manualen
http://se2.php.net/manual/sv/function.mail.php

ShaadowMedlem sedan apr. 200632 inlägg
#5

Så med andra ord räcker denna kod:

<?php
$to = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();

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

PeddaMedlem sedan juni 20006 032 inlägg
#6

Ja, fast den kanske inte är den bästa.

Om du kollar i min kod så har jag

if (isset($_POST['feedback'])) {

Detta innebär att om jag inte har $_POST['feedback'] från formuläret så skickas inget mail. I ditt exempel så skickas ett mail även om nån bara "råkar" surfa till send.php!
Sen i slutet så skickar jag vidare till en tacksida med

header("Location: kontrollpanel.php?info=tackfeedback");
    exit;

Men om du använder ditt exempel så skickas mailet, men besökaren ser bara en vit sida. Alltså han får ingen bekräftelse på att mailet har skickats, och uppdaterar han sidan så skickas ett nytt mail.

ShaadowMedlem sedan apr. 200632 inlägg
#7

Skulle du kunna ta detta över msn eller något?
Förstår inte riktigt så bra här och nu :)

PeddaMedlem sedan juni 20006 032 inlägg
#8

Visst kan vi det om du tycker det är bättre

msn: bortredigerat

ShaadowMedlem sedan apr. 200632 inlägg
#9

Tack så mycket :)
Kommer in ikväll/natt :P

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