我在这个论坛上为这个话题彻底尝试了很多方法,但我无法解决我的问题。
所以这就是问题所在。我无法从表单中返回$_POST
值,但javascript' document.getElementById().value
可以捕获表单值。
这是我的表单代码:
<form action="#" method="post" enctype="text/plain">
<input id="input_date" name="input_date" class="datepicker" placeholder="Choose date" type="text"/>
<input id="submit" name="submit" type="button" value="Submit here" onclick="Submit_date()"/>
</form>
这是我在同一个文件中的php代码:
$tanggal = date('yyyy-mm-dd', strtotime($_POST['input_date']));
这是我的javascript代码也在同一个文件中:
var tanggalan = document.getElementById("input_date").value;
confirm("Date1: " + tanggalan +
"\n Date2: " + <?php echo json_encode($_POST['input_date'])?> +
"\n Date3: " + <?php echo json_encode($tanggal)?>);
例如,表单已写入"2 March, 2016"
,Date1
会返回我想要的内容,但Date2
会返回"null"
而Date3
会返回{{1} }}
我做错了什么?
答案 0 :(得分:0)
"\n Date2: " + <?php echo json_encode($_POST['tanggal'])?>
Date2为null,因为您调用的$ _POST变量不存在。
$tanggal
是一个变量而不是您在此处指定的$ _POST变量
$tanggal = date('yyyy-mm-dd', strtotime($_POST['input_date']));
让它$tanggal = $_POST['tanggal'] = date('yyyy-mm-dd', strtotime($_POST['input_date']));
使其正常工作。
答案 1 :(得分:0)
删除enctype =&#34; text / plain&#34;并在表单中添加操作,以帮助您在提交表单时设置$ _POST。
另外,在PHP代码中使用以下内容以避免返回&#34; 70707070-0101-0101&#34;
$ tanggal = date(&#39; Y-m-d&#39;,strtotime($ _ POST [&#39; input_date&#39;]));