我正在处理一个PHP项目-我有一个表单将日期发布到另一表单 我进行了一些更改(尽管未对所输入的内容进行任何更改) 现在,除日期以外,所有其他输入都将使用其发布的值进行更新
如果我手动以HTML设置日期,那么它会起作用:
<div><input type="date" class="form-control" id="DateCourse" name="DateCourse" value="2009-01-01"></div>
如果我将其设置为以下内容,则不会:
<div><input type="date" class="form-control" id="DateCourse" name="DateCourse" value="<?php echo (isset($DateCourse))?$DateCourse:'';?>"></div>
以下:
$DateCourse = ($_POST["DateCourse"]);
var_dump($_POST["DateCourse"]);
var_dump($DateCourse);
返回:
string(10)“ 2019-01-05”-表示已设置帖子值
注意:未定义的变量:在第119行的/home/bitecons/bts.biteconsulting.co.za/v2/editccr.php中的DateCourse-如何将其定义为未定义
NULL
我到底在做什么错?除了使用PHP:P
流量按要求:
Records.php:
这是用于预填充我发布的字段的功能:
function Prefill(x) {
TabletoEdit = x.closest('table').id;
SelectedRow = x.rowIndex;
document.getElementById("EntryEditing").value = x.cells[19].innerHTML;
document.getElementById("DateCourse").value = x.cells[0].innerHTML;
document.forms["records"].submit();
}
那么我也有:
<form action="editrec" method="post" id="records">
<input type='hidden' name='Period' id='Period' />
<input type='hidden' name='Month' id='Month' />
<input type='hidden' name='res' id='res' />
<input type='hidden' name='CustName' id='CustName' />
<input type='hidden' name='DateCourse' id='DateCourse' />
</form>
调用Prefill,然后提交表单
我已经跟踪并且DateCourse有数据,但是当转到另一种形式时,它“消失了”:
if(!empty($_POST)) {
$DateCourse = ($_POST["DateCourse"]);
$CustName = ($_POST["CustName"]);
}
例如,是否填写了CustName,但没有填写DateCourse?
侧面问题:
如果未设置另一个post var(与此无关),是否将返回true:
if(!empty($_POST))
答案 0 :(得分:0)
我认为您使用了错误的代码 您必须先提交表单,然后使用$ Date在POSTBACK中以另一种形式进行填写
答案 1 :(得分:0)
最好的方法之一就是像
一样定义$ DateCourse。<?php
$DateCourse = "";
if(!empty($_POST["DateCourse"])) {
$DateCourse = ($_POST["DateCourse"]);
}
?>
<div><input type="date" class="form-control" id="DateCourse" name="DateCourse" value="<?php echo $DateCourse;?>"></div>
答案 2 :(得分:0)
好的,很抱歉,但将来可能会对其他人有所帮助。 我对一个旧函数进行了函数调用-失败,导致我的变量永远无法定义...我知道这很愚蠢,但有时需要一块音板...