Javascript Can';t向电子邮件处理程序添加空格、表单

Javascript Can';t向电子邮件处理程序添加空格、表单,javascript,php,html,Javascript,Php,Html,早上好 我正试图在表单上的单词中添加空格。下面是一个例子: 例如,“Referralname”和“Phonenumber”应该是“Referralname”和“Phonenumber” 以下是表格: 转介表格 使用下面的表格发送您的推荐,我们会尽快回复您 你的名字: 转介人姓名: 推荐人的电子邮件: 转介人的电话号码: 信息: 上传简历: 发送→ 成功发送您的邮件! 错误抱歉,发送表单时出错。 “推荐人姓名”是一个标签。它只适用于用户交互。您的PHP代码从未见过它 “referr

早上好

我正试图在表单上的单词中添加空格。下面是一个例子:

例如,“Referralname”和“Phonenumber”应该是“Referralname”和“Phonenumber”

以下是表格:


转介表格
使用下面的表格发送您的推荐,我们会尽快回复您

你的名字: 转介人姓名: 推荐人的电子邮件: 转介人的电话号码: 信息: 上传简历: 发送→ 成功发送您的邮件! 错误抱歉,发送表单时出错。
“推荐人姓名”是一个标签。它只适用于用户交互。您的PHP代码从未见过它

“referralname”是类型为“text”的输入控件的名称。这就是您的代码所使用的


不能(或至少不应该)在字段名中添加空格和标点符号。它们没有必要完全相同

你可以这样做

private function compose_mail($post)
    {
        $content = "Form submission: \n\n";
        foreach($post as $name=>$value)
        {
            $content .= ucwords($name).":\n";
            $content .= "$value\n\n";
        }
        $content = str_replace("Referralname", "Referral Name", $content);
        $content = str_replace("Phonenumber", "Phone number", $content);
        $this->mailer->Body  = $content;
    }

我认为您希望电子邮件正文中有的空间。因此,请尝试在php中添加以下两行:

        $content = str_ireplace('Referralname', 'Referral Name', $content);
        $content = str_ireplace('Phonenumber', 'Phone Number', $content);

        //right before this line:
        $this->mailer->Body  = $content;
Php函数将第一个字符串替换为第二个字符串,但仅在电子邮件正文中


Str_ireplace或Str_replace对您来说应该是相同的。前者不区分大小写,后者区分大小写。

那么,你的问题是什么?一切似乎都很好。我想在单词中添加空格,例如,“Referralname”应该是“Referral Name”@ChukwuemekaInyaI不确定它在哪里显示不正确。您指的是html代码中的“转介名称”吗(是“转介”而不是“转介”)?如果是这样的话,我不知道为什么要显示php代码。@Andri Referralname之间应该有一个空格。所以Referralname应该是Referralname,但代码中没有“Referralname”。只是“推荐人的名字”。这就是你的意思吗?表格很好,但是当我收到电子邮件时,我没有得到两个空格。请参阅附件中的电子邮件组成代码。您是在谈论电子邮件地址吗?你想要“第一个最后一个”吗?这是一个非常简单的解决方案。但我们应该做到这一点。它只是在代码完成后在文本中执行“查找并替换”,但它会使它工作;到“撰写邮件”功能。如果你想替换更多的文本,你可以添加更多的行。很高兴我能帮你