猿问

如何将 php 变量 FORM 数据传递给邮件处理程序?

我目前有一个用 HTML/PHP 构建的表单,其中包含一些我无法传递给邮件处理程序的可变数据。发送邮件时,带有可变数据的输入为空白。


HTML 表单:


<form action="mail-handler.php" method="POST">

    <label>First Name:</label>

    <input name="T1" type="text" value="<?php print($_GET['firstname']); ?>" disabled="" />


    /*Non variable data still needs to pass*/

    <label>Phone*:</label>

    <input name="phone" type="tel" required="" />


    <input type="submit" value="Submit">

</form>

PHP 邮件处理程序:


$firstname = $_POST['firstname'];

$phone = $_POST['phone'];



$msgBody="First Name: $firstname\n

          Phone: $phone\n";

... 等等。


该表格适用于除具有可变数据的输入之外的所有输入$firstname


如何获取“名字”的可变形式值以传递给电子邮件处理程序?


Helenr
浏览 93回答 1
1回答

梵蒂冈之花

发现罪魁祸首实际上是用来阻止某人编辑存储信息的 HTML 位。我已经将带有可变数据的表单域设置为disabled="". 显然这是阻止数据传输的最后一个块。这些是我使用评论建议和更改输入的禁用状态对代码所做的更改。<form action="mail-handler.php" method="POST">    <label>First Name:</label>    <input name="nameFirst" type="text" value="<?php print($_GET['firstname']); ?>" readonly="" />    /*Non variable data still needs to pass*/    <label>Phone*:</label>    <input name="phone" type="tel" required="" />    <input type="submit" value="Submit"></form>PHP 不喜欢禁用状态,所以readonly=""在那里完成了工作。然后我更改了 var 名称以更好地满足我的需要:$nameFirst = $_POST['nameFirst'];$phone = $_POST['phone'];$msgBody="First Name: $nameFirst\n          Phone: $phone\n";这非常有效。不要disabled=""在要传递可变数据的表单上使用,它不会起作用。改用readonly=""。
随时随地看视频慕课网APP
我要回答