我目前在一个页面上有一个表单,根据用户输入的内容计算值:
// PROCESS USERS CALCULATIONS
$ElecAQ = trim($_POST['ElecAQ']);
$Elecday = trim($_POST['Elecday']);
$Elecmonth = trim($_POST['Elecmonth']);
$Elecyear = trim($_POST['Elecyear']);
$Elecstanding_charge = trim($_POST['Elecstanding_charge']);
<input type="text" style="padding-left: 2px" class="text-box-find" name="ElecAQ" placeholder="0000" value="<?php if(isset($_POST['ElecAQ'])) echo $_POST['ElecAQ'];?>">
<input type="text" class="day" name="Elecday" style="float: left; margin-right: 2px" value="<?php if(isset($_POST['Elecday'])) echo $_POST['Elecday'];?>" placeholder="DAY" />
<input type="text" class="month" name="Elecmonth" placeholder="MONTH" style="float: left" value="<?php if(isset($_POST['Elecmonth'])) echo $_POST['Elecmonth'];?>">
<input type="text" class="year" name="Elecyear" placeholder="YEAR" style="float: left" value="<?php if(isset($_POST['Elecyear'])) echo $_POST['Elecyear'];?>">
<input type="text" style="padding-left: 2px" class="text-box-find" name="Elecstanding_charge" placeholder=".00" value="<?php if(isset($_POST['Elecstanding_charge'])) echo $_POST['Elecstanding_charge'];?> ">
当提交此表单时,页面将刷新并向用户显示成功消息(他们可以保存的金额)以及另一个表单,提示他们输入详细信息以请求下面的报价。
我的问题是:是否有可能以某种方式保存输入第一个表单的值,然后在提交第二个表单时将其发送到电子邮件中?
当处理完第一个表单时,页面会刷新,所以当从第二个表单发送电子邮件时,我收到的第一个表单的所有值都是空白的。
我真的希望我已经设法解释这个,我希望有人可以告诉我这样做的最好方法吗?
以下是提交第二个表单后发送电子邮件的代码部分:
$emailTo = 'email@email.co.uk';
$subject = 'Savings Calculator -Submitted request from '.$name;
$sendCopy = trim($_POST['sendCopy']);
$body = "First Name: $contactName \n\nBusiness Name: $businessname \n\nEmail: $email \n\nPhone: $phone \n\nMobile: $mobile \n\nBest time of day to call: $time\n\nUSERS CALCULATIONS: $_SESSION['ElecAQ']";
$headers = 'From: ' .' <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $email;
答案 0 :(得分:3)
您可以使用$_SESSION
变量来保存可以用于其他表单的变量。
在顶部使用session_start();
开始访问会话变量。
为会话变量赋值。
$_SESSION["favcolor"] = "green";
访问echo $_SESSION["favcolor"];
答案 1 :(得分:2)
您需要在两个页面的顶部添加session_start();
。
将值分配给会话变量
$_SESSION['ElecAQ'] = trim($_POST['ElecAQ']);
访问会话值
echo $_SESSION["ElecAQ"];
尝试示例
<?php
session_start();
$_SESSION['ElecAQ'] = trim($_POST['ElecAQ']);
$_SESSION['$Elecday'] = trim($_POST['Elecday']);
$_SESSION['$Elecmonth'] = trim($_POST['Elecmonth']);
$_SESSION['$Elecyear'] = trim($_POST['Elecyear']);
$_SESSION['$Elecstanding_charge'] = trim($_POST['Elecstanding_charge']);
// access session values call
echo $_SESSION['ElecAQ'];
?>
电子邮件代码
刚刚将USERS CALCULATIONS: $_SESSION['ElecAQ']";
更改为USERS CALCULATIONS: ".$_SESSION['ElecAQ'];
更新
$emailTo = 'email@email.co.uk';
$subject = 'Savings Calculator -Submitted request from '.$name;
$sendCopy = trim($_POST['sendCopy']);
$body = "First Name: $contactName \n\nBusiness Name: $businessname \n\nEmail: $email \n\nPhone: $phone \n\nMobile: $mobile \n\nBest time of day to call: $time\n\nUSERS CALCULATIONS: ".$_SESSION['ElecAQ'];
$headers = 'From: ' .' <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $email;