/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Punktum ifm. mail
Fra : Jimmy E. Frederiksen


Dato : 27-03-04 15:46

Jeg har denne form:

<?php
if(isset($_POST['form'])){
$minemail = "jimmy@remove.e-frederiksen.dk";
$emne = "Fil";
$besked = "$_POST[besked]";
$fra = "From: $_POST[navn] <$_POST[email]>";
mail($minemail, $emne, $besked, $fra);
echo "mail blev sendt!";
}
else{
echo "Udfyld venlist alle felter med *!";
}
?>

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
Navn: <input type="text" name="navn"><br>
Email: <input type="text" name="email"><br>
Besked: <textarea name="besked" rows="5" cols="15"></textarea>
<input type="submit" name="form" value="Send">
</form>

Hvis man i navn skriver "Jimmy E. Frederiksen" bliver afsendernavnet "Jimmy
E.Frederiksen" når man modtager mailen. Hvorfor rykker punktumet det sammen?

Jimmy



 
 
Christian Joergensen (27-03-2004)
Kommentar
Fra : Christian Joergensen


Dato : 27-03-04 20:40

On Sat, 27 Mar 2004 15:45:57 +0100, Jimmy E. Frederiksen wrote:

> $fra = "From: $_POST[navn] <$_POST[email]>";

[...]

> Hvis man i navn skriver "Jimmy E. Frederiksen" bliver afsendernavnet
> "Jimmy E.Frederiksen" når man modtager mailen. Hvorfor rykker punktumet
> det sammen?

For at det skal være helt korrekt, skal From-headeren se sådan her ud:

   From: "Jimmy E. Frederiksen <jimmy@remove.e-frederiksen.dk>

Prøv om ikke det løser dit problem

--
Christian Jørgensen | There is no spoon!
http://www.razor.dk |


Christian Joergensen (27-03-2004)
Kommentar
Fra : Christian Joergensen


Dato : 27-03-04 20:46

On Sat, 27 Mar 2004 20:39:37 +0100, Christian Joergensen wrote:

> For at det skal være helt korrekt, skal From-headeren se sådan her ud:
>
>    From: "Jimmy E. Frederiksen <jimmy@remove.e-frederiksen.dk>
>
> Prøv om ikke det løser dit problem

   From: "Jimmy E. Frederiksen" <jimmy@remove.e-frederiksen.dk>

Selvfølgelig...

--
Christian Jørgensen | There is no spoon!
http://www.razor.dk |


Jimmy E. Frederiksen (27-03-2004)
Kommentar
Fra : Jimmy E. Frederiksen


Dato : 27-03-04 21:25

> From: "Jimmy E. Frederiksen" <jimmy@remove.e-frederiksen.dk>
>
> Selvfølgelig...

OK, det var måske lidt dårligt formuleret - det er ikke jeg som skal stå som
afsender.

From skal være den som afsender mailformen - altså:

$fra = "From: $_POST[navn] <$_POST[email]>";

Hvis man skriver "Te S. T" i navn feltet, så når jeg modtager mailen vil
afsender navnet være "Te S.T".

Jimmy



Kristian Thy (27-03-2004)
Kommentar
Fra : Kristian Thy


Dato : 27-03-04 22:34

Jimmy E. Frederiksen uttered:
>> From: "Jimmy E. Frederiksen" <jimmy@remove.e-frederiksen.dk>
>>
>> Selvfølgelig...
>
> OK, det var måske lidt dårligt formuleret - det er ikke jeg som skal
> stå som afsender.

Du misser pointen. Der skal quotes om navnet når det indeholder
punktum.

> $fra = "From: $_POST[navn] <$_POST[email]>";

$fra = "From: \"$_POST['navn']\" <$_POST['email']>";

\\kristian
--
PROGRAMMER [n]: a device for converting coffee into software.

Jimmy E. Frederiksen (28-03-2004)
Kommentar
Fra : Jimmy E. Frederiksen


Dato : 28-03-04 10:30

> Du misser pointen. Der skal quotes om navnet når det indeholder
> punktum.
>
> > $fra = "From: $_POST[navn] <$_POST[email]>";
>
> $fra = "From: \"$_POST['navn']\" <$_POST['email']>";

Super, så virker det - tak! Men hvordan kan det være at det virkede i
body-teksten - altså hvis jeg echo'ede $_POST[navn] deri?

Dog virker det ikke hvis jeg indsætter '-tegnene, så melder den:

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting
T_STRING or T_VARIABLE or T_NUM_STRING in D:\HTML\test\index.php on line 30

Det er den linie med $fra delen.

Er der tommelfinger-regel hvornår man skal bruge " og '?

Jimmy



Peter Brodersen (28-03-2004)
Kommentar
Fra : Peter Brodersen


Dato : 28-03-04 13:16

On 27 Mar 2004 21:34:16 GMT, Kristian Thy <thy@it.edu> wrote:

> $fra = "From: \"$_POST['navn']\" <$_POST['email']>";

Du kan ikke bruge array-referencer med plinger inde i en quoted
string. Enten skal de udelades (altså $_POST[navn]), hvilket er
gyldigt nok inde i en quoted string, eller også kan man smække {}
rundt om, fx:

$fra = "From: \"{$_POST['navn']}\" <{$_POST['email']}>";

--
- Peter Brodersen

Ugens sprogtip: slitage (og ikke slidtage)

Jimmy E. Frederiksen (29-03-2004)
Kommentar
Fra : Jimmy E. Frederiksen


Dato : 29-03-04 17:45

"Peter Brodersen" <usenet@ter.dk> skrev i en meddelelse
news:c46fme$955$2@dknews.tiscali.dk...
> Du kan ikke bruge array-referencer med plinger inde i en quoted
> string. Enten skal de udelades (altså $_POST[navn]), hvilket er
> gyldigt nok inde i en quoted string, eller også kan man smække {}
> rundt om, fx:

Tak for det, Peter!

Jimmy



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste