如何删除php电子邮件中的空行

时间:2017-08-29 15:42:38

标签: php email

我有一个php表单,当发布时会发送一封确认电子邮件。表单有几个下拉列表,当填充时,显示零件的数量和名称。我的一切工作正常,在我的$ usermessage中,我列出了与下拉列表对应的所有变量。我只想显示已经填充的下拉列表和名称。我无法弄清楚如何在未填充变量时删除多余的空格。

当我有前两个下拉菜单和第八个下拉菜单时,我的确认电子邮件是这样的:

用户信息
名称
John Doe

电邮地址
email@email.com

地址
12345 street

美国
镇政府邮编

电话号码
1234567890

数量
项目#

2
CH171181

1
CH171182








1
CH171363

正如您所看到的,空间的巨大差距弥补了无人居住的变量。

这是我的代码:

public class FacebookPage extends Fragment {

    WebView webView;

    ProgressDialog progress;
    @Nullable
    @Override  
 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container,
                             Bundle savedInstanceState) {
        View mainView = (View) inflater.inflate(R.layout.facebook_page, container, false);
        WebView webView = (WebView)mainView.findViewById(R.id.webview);
        webView.getSettings().setJavaScriptEnabled(true);


        webView.loadUrl("https://www.facebook.com/TahrirLounge/");

        progress = ProgressDialog.show(this, "Loading",
                    "Loading", true);
        webView.setWebViewClient(new WebViewClient() {

           public void onPageFinished(WebView view, String url) {
                if (progress != null)
                    progress.dismiss();
            }
        });
        return mainView;


    }

3 个答案:

答案 0 :(得分:1)

不是在1个连续字符串中写入输出,而是需要检查变量是否包含字符串。如果它是空的,那么甚至不要将其包含在$usermessage中。

例如:

if ($CH171183 !== ''):
    $usermessage .= $CH171183 . "\n" . $var3;
endif;

这意味着如果$CH171183包含字符串,它将包含在输出($usermessage)中。但如果它没有 - 包括那些原本会去的空间 - 将出现在输出中。换句话说,您只需在 要显示数据的位置创建输出。

原始代码的问题是$usermessage没有检查变量是否为空。所以如果它是空的,你最终会在输出中留下空格。

答案 1 :(得分:0)

试试这个

str_replace(chr(13), "", $usermessage)

答案 2 :(得分:0)

尝试以下代码:

$email = $_POST["email"];
$myemail ="$email"; 

$vars = Array("CH171181",
              "CH171182",
              "CH171183",
              "CH171184",
              ... etc
        );

$first_name = $_POST["first_name"]; 
$last_name = $_POST["last_name"];   
$address = $_POST["address"];
$address2 = $_POST["address2"]; 
$country = $_POST["country"];   
$city = $_POST["city"]; 
$state = $_POST["state"];   
$zip = $_POST["zip"];
$phone = $_POST["phone"];   

$user = "$myemail";
$usersubject = "Subject";
$userheaders = "From: support@support.com\n";

$usermessage = "

Users Information
Name
$first_name $last_name

Email address
$email

Address
$address
$address2
$country
$city $state $zip

Phone Number
$phone

Qty
Item #";

foreach($vars as $idx => $v){
    if($_POST[$v]){
        $usermessage .= $idx . "\n" . $v . "\n";
    }
}

$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";    

mail($user,$usersubject,$usermessage,$userheaders,$headers);
}  
相关问题