douju9847 2015-06-18 19:08
浏览 21
已采纳

PHP从textarea进入以发送电子邮件

I created a form for users to key in recipient, subject name, and message to send mail via phpmailer. the problem i'm facing is with the textarea in my form.

I typed this into the textarea:

Hi john,
how's your day?

regards,
your best friend

but right now, this is showing in the email:

Hi john, how's your day? regards, your best friend

any ideas on how to format it to how the user enters in the text area? my current script is just

$body= $_POST["msg"];

i read that i should use nl2br but isnt that for output? Thanks in advance

  • 写回答

1条回答 默认 最新

  • douhu4692 2015-06-18 19:54
    关注

    What you will need to do is add a break for each line.

    $text = trim($_POST['textareaname']); // remove the last 
     or whitespace character
    $text = nl2br($text); // insert <br /> before 
     
    

    If you dont like that try this:(you may need to play with it.)

    //trim off excess whitespace off the whole
    $text = trim($_POST['textareaname']);
    
    //explode all separate lines into an array
    $textAr = explode("
    ", $text);
    
    //trim all lines contained in the array.
    $textAr = array_filter($textAr, 'trim');
    
    $str='';
    //loop through the lines
    foreach($textAr as $line){
    $str .= $line."</br> ";
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部