从PHP表单收到的电子邮件显示;0“;内容

从PHP表单收到的电子邮件显示;0“;内容,php,string-concatenation,Php,String Concatenation,嘿,这是我的第一个PHP联系人表单。一切正常,我正在接收电子邮件,但电子邮件内容显示为“0” 我的PHP代码是: $content = $_POST['name'] + $_POST['message']; name是表单元素的名称(人名),message是message元素的名称。当我打印时,它们都显示在PHP数组中 电子邮件内容才是问题所在!我遵循了我的教程中关于如何做到这一点的部分,并仔细检查了所有内容。有人能帮我吗 谢谢 在PHP中,需要使用“.”来合并字符串。 “+”表示JS,正如其

嘿,这是我的第一个PHP联系人表单。一切正常,我正在接收电子邮件,但电子邮件内容显示为“0”

我的PHP代码是:

$content = $_POST['name'] + $_POST['message'];
name是表单元素的名称(人名),message是message元素的名称。当我打印时,它们都显示在PHP数组中

电子邮件内容才是问题所在!我遵循了我的教程中关于如何做到这一点的部分,并仔细检查了所有内容。有人能帮我吗

谢谢

在PHP中,需要使用“.”来合并字符串。 “+”表示JS

,正如其他人所指出的,“加号”不连接字符串;用“点”代替

$content = $_POST['name'] . $_POST['message'];

此外,“加号”导致PHP解释器执行此操作,这就是您的电子邮件字面上显示“零”的原因。您已经成功地将两个POST变量转换为一个数字(尽管您肯定不是第一个这样做的人!)

从您提交的代码判断,您似乎试图将表单提交者的姓名和他们的消息合并为一个字符串,并将其放在电子邮件正文中

突出的主要问题是如何连接(组合)字符串。在PHP中,是句点(“.”)。在您当前的代码中,它试图添加两个类似数字的字符串,这就是为什么您在电子邮件正文中遇到0

让我们使用您当前的代码,并应用该修复程序:

$content = $_POST['name'] . $_POST['message'];
第二,让我们来看看你的$内容变量的实际输出。如果我提交的名字是“Jon”,而我的信息是“你好,朋友!”以及您现在的代码,我们最终会得到:

JonHello,Friends!  
为了解决这个问题,让我们添加一个冒号和一个空格来表示用户正在说以下消息:

$content = $_POST['name'] . ': ' . $_POST['message'];
现在,如果我们输出$content变量,我们将看到:

Jon: Hello, Friends!
请记住,我们添加的冒号和空格可以替换任何其他字符串

例如,我们可以稍微修改连接,为文本添加一点味道,让用户“说出”自己的名字:

$content = $_POST['name'] . 'says: "' . $_POST['message'] .'"';
此代码在输出时将产生:

Jon says: "Hello, friends!"

我希望这有帮助,格兰德。如果您有任何进一步的问题,请告诉我。

+
不是PHP中的串联运算符。非常感谢您的详细回答!非常感谢。很高兴能帮上忙,格兰德。如果这有助于回答你的问题,并且你认为这是最能解决你的问题的答案,请考虑把它标记为你接受的答案来帮助将来可能有这个问题的其他用户。干杯祝你有美好的一天!