我知道我没有任何警告或审查。这将被添加:D
我目前有一个php表单,它要求提供以下信息:
然后提交,并由名为SSESC.php的文件处理(代码将在下面)。
然后它应该将计算数据返回到字段Total Employee贡献($TEC
)和总储蓄($NISAVING
)
我可以将数据传递给SSEC.php文件,并对其进行处理(由echo测试),但我无法将数据恢复并显示在表单上。
我尝试将数据保存到会话中,然后返回并重新填充表单。我使用<?php header ("location: form.php");?>
从脚本返回。这是有效的,但表格没有填写。我将从表格中包含下面的片段。
SSESC.php代码
<?php header ("location: form.php");?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>SSEC-Process</title>
</head>
<?php
setlocale(LC_MONETARY, 'en_GB');
$Average_Salary = $_POST["Average_Salary"];
$EMPNUM = $_POST["EMPNUM"];
$PUPCT = $_POST["PUPCT"];
$PCPCT = $_POST["PCPCT"];
$TEC = "";
$NI_save = "";
$employeepension = $PCPCT/100;
$pensionuptake = $PUPCT/100;
$TEC = $Average_Salary*$employeepension*$EMPNUM*$pensionuptake;
$combi = $TEC*13.8/100;
$NI_save = money_format('%.0i', $combi);
$_SESSION["TEC"] = money_format('%.0i',$TEC);
$_SESSION["NISAVE"] = $NI_save;
?>
<body>
</body>
</html>
表格摘要
<input id="TEC" name="TEC" class="Label" type="text" maxlength="255" value="<?= $_SESSION['TEC']?>"/>
<input id="NI_save" name="NI_save" class="label" type="text" maxlength="255" value="<?=$_SESSION['NISAVE']?>"/>
提前致谢。 史蒂夫。
答案 0 :(得分:1)
我建议编写标准标记(<?php echo
),因为并不总是启用短标记。所以你必须写:
value="<?php echo $_SESSION['TEC']?>"
您是否在此声明之前致电session_start
?
首先尝试此操作,然后执行var_dump
测试值是否设置正确。
答案 1 :(得分:1)
尝试使用以下方法修改表单:
<input id="TEC" name="TEC" class="Label" type="text" maxlength="255" value="<?php echo $_SESSION['TEC']?>"/>
<input id="NI_save" name="NI_save" class="label" type="text" maxlength="255" value="<?php echo $_SESSION['NISAVE']?>"/>
答案 2 :(得分:1)
session_start();
位于两个脚本之上。 (在这个脚本和form.php中都在右边)header()
调用移至处理脚本的底部。