Just nu i M3-nätverket
Gå till innehåll

Skicka <TEXTAREA> med mail()


Corez

Rekommendera Poster

Jag vill hämta text från en TEXTAREA som heter $meddelande och skicka iväg det med hjälp av funktionen mail().

 

Mitt problem är nu att jag inte vet hur jag ska göra för att få med radbyten i mailet.

 

Jag har testat med att använda nl2br() men det fungerade inte.

Länk till kommentar
Dela på andra webbplatser

Skickar du brevet som text/plain eller htmlbrev?

 

Om du skickar brevet som text så ska man inte göra något särskilt. Radbrytningarna följer med automatiskt.

 

Skickar du däremot som html, så kan jag tänka mig att du kanske behöver använda nl2br(). Inte helt säker...

 

Jag har testat med att använda nl2br() men det fungerade inte.

Fungerade inte själva funktionen, lr fick du inte förväntat resultat?

 

 

Almir - ...

____________________________________________________________

-Läser Programmet för Informatik med Systemvetenskap på MDH, Västerås.-

 

Länk till kommentar
Dela på andra webbplatser

Själva funktionen är ok det ända problemet är radbrytningarna

 

$open = mysql_connect("localhost", "usr", "pwd");

$query = mysql_db_query("db3984a", "SELECT * FROM flames_spelarna WHERE anvnamn='ludde'");

 

while ($rad = mysql_fetch_array($query)) {

if ($rad['email'] != "") {

$headers = "MIME-Version: 1.0\r\n";

$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

$headers .= "From: Sundsvall Flames\r\n";

$to = $rad['email'];

$message = $meddelande;

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

}

}

 

Länk till kommentar
Dela på andra webbplatser

Man kan klicka fel ibland! :)

Flyttas till PHP-forumet...

/ Kristoffer - moderator för PC-Program Övrigt

/ Kristoffer

Windows kunde inte hitta något tangentbord. Tryck F1 för att försöka igen eller F2 för att avbryta.

 

Länk till kommentar
Dela på andra webbplatser

För det första:

$query = mysql_db_query("db3984a", "SELECT * FROM flames_spelarna WHERE anvnamn='ludde'");

 

while ($rad = mysql_fetch_array($query)) {

Är det verkligen nödvändigt med en While-slinga där. Du har ju villkoren

WHERE anvnamn='ludde' och då borde du väl få en enda användare. Om så är fallet så kan du "attacha" datat genom att bara skriva $rad = mysql_fetch_array($query) och ta bort while-slingan.

 

Ok till problemet nu:

$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

Du skickar alltså ett HTML-mail och då måste du helt enkelt köra nl2br() på dina variabler där du har radbrytningar. Alltså:

$message = nl2br($_POST['meddelande']);

 

Nu ska det fungera! Att inte nl2br() fungerade förut beror förmodligen på att du använde den på fel sätt eller nåt.

 

 

 

Almir - ...

____________________________________________________________

-Läser Programmet för Informatik med Systemvetenskap på MDH, Västerås.-

 

Om svaret var till någon hjälp, så får du gärna ge en liten poäng

 

[inlägget ändrat 2002-11-20 07:56:35 av TicoRoman]

Länk till kommentar
Dela på andra webbplatser

Where anv='ludde' använde jag endast för att jag inte vill skicka ut mina test mail till ett hundra tal personer. =)

 

Angående nl2br() så fungerar det inte för mig att använda sig av den funktionen när jag skickar i väg mailet.

 

Jag har i alla fall löst problemet på ett smidigt sätt, inte använda HTML.

 

Tack för hjälpen ändå.

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...