webForumDet fria alternativet

Mail-script

PHP

9 svar · 317 visningar · startad av Rodan

Medlem sedan juli 20021 523 inlägg
Frågan#1

Hejsan!

Är helt ny när det gäller PHP, har bara pillat med ASP förut...
Så nu har jag fastnat.

<?php
@extract($_POST);
$Undervisningsort = stripslashes($Undervisningsort);
$Annanort = stripslashes($Annanort);
$Sakrasttelefontid = stripslashes($Sakrasttelefontid);
$Adress = stripslashes($Adress);
$namn = stripslashes($namn);
$realname = stripslashes($realname);
$Telefon = stripslashes($Telefon);
$email = stripslashes($email);
$email = stripslashes($Text);

mail('rodanab-64158f3',$subject,"From: $realname <$email>",$Undervisningsort,$Annanort,$Sakrasttelefontid,$Adress,$Telefon,$namn,$text);

header("location:skickat.php");
?>

Så ser min fil som skickar själva mailet, men det funkar inte.
Jag får detta som felmeddelande.

Warning: mail() expects at most 5 parameters, 10 given in c:\Inetpub\wwwroot\skicka2.php on line 13

Warning: Cannot modify header information - headers already sent by (output started at c:\Inetpub\wwwroot\skicka2.php:13) in c:\Inetpub\wwwroot\skicka2.php on line 14

Säkert jätte enkelt, men jag fattar inte, har flyttat och trixat med lyckas inte. (har sökt också) :l

Tack på förhand!

Medlem sedan mars 20025 907 inlägg
#2

Funktionen mail tar minst 3 och maximalt 5 inparametrar. Du har skickat in 10 (varje kommatecken påbörjar en ny parameter). Dessutom så måste den första parametern (där du skrivit 'rodanab-64158f3') vara en giltig mailadress. Jag begriper inte heller riktigt varför du kör dina variabler genom stripslashes(). Prova följande:

<?php
@extract($_POST);
mail('rodanab-64158f3 <mailadress@domän.se>',$subject,"From: $realname <$email>\n $Undervisningsort\n $Annanort\n $Sakrasttelefontid\n $Adress\n $Tel
efon\n $namn\n$text);

header("location:skickat.php");
Medlem sedan juli 20021 523 inlägg
#3

Ahh ok, det förklarar saken. :)

Men nu får jag detta.

Parse error: syntax error, unexpected T_STRING in c:\Inetpub\wwwroot\skicka2.php on line 6

och rad 6 är: header("location:skickat.php"); :q

Medlem sedan mars 20025 907 inlägg
#4

Ahh.. missade den avslutande fnutten.

mail('rodanab-64158f3 <mailadress@domän.se>',$subject,"From: $realname <$email>\n
 $Undervisningsort\n $Annanort\n $Sakrasttelefontid\n $Adress\n $Telefon\n $namn\n$text[b]"[/b]);
Medlem sedan juli 20021 523 inlägg
#5

mega tack! :)

Du råkar inte veta någon sida där det finns små kurser där man kan lära sig allt som är basic inom PHP?

Medlem sedan mars 20025 907 inlägg
#6

http://www.phpportalen.net/school.php Är nog rätt okej. Annars är manualen på https://www.php.net underbar, användarkommentarerna där kan vara en riktig guldgruva ibland!

Medlem sedan juli 20021 523 inlägg
#7

Ännu ett problem, det är så att $namn är en checkbox, och om man inte har kryssat i den så får jag fram ett felmeddelande,

Notice: Undefined variable: namn in c:\Inetpub\wwwroot\skicka2.php on line 4

Warning: Cannot modify header information - headers already sent by (output started at c:\Inetpub\wwwroot\skicka2.php:4) in c:\Inetpub\wwwroot\skicka2.php on line 5

Hur ska jag göra för att den skickar att den inte är ikryssad?

Medlem sedan mars 20025 907 inlägg
#8

Lite kod att visa kanske?

Generellt:

if(isset($namn)){
	//Här kommer all kod som ska köras om $namn finns
}
Medlem sedan juli 20021 523 inlägg
#9

Peeer skrev:

Lite kod att visa kanske?

Generellt:

if(isset($namn)){
	//Här kommer all kod som ska köras om $namn finns
}
 mail('rodanab-64158f3',$subject,"From: $realname <$email>\n
 $Undervisningsort\n $Annanort\n $Sakrasttelefontid\n $Adress\n $Telefon\n[B]$namn[/B]\n$text");
Medlem sedan mars 20025 907 inlägg
#10

lägg till

if(!isset($namn)){
	$namn = 'Ej ikryssad!';
}

någonstans ovanför mail()-raden.

252 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
117 ms — ändringar (db)