首页 > 解决方案 > 如何将 datatime-local 输入转换为 php 变量?

问题描述

我正在尝试将输入字符串转换为 php 的数据对象,以在 sql 上使用它,但它不起作用,我找不到错误,html 是

<div class="form-group ">
    <label class="control-label" for="interno">Fecha Limite</label>
    <input name="fechalimite" type="datetime-local" class="form-control" id="fechalimite">
</div>      

php 上的 post 方法就是这样做的

$fecha = getA(strtotime("fechalimite"));
$datetime = date("Y-m-d H:i:s",$fecha);

如果我使用 echo fecha 正确显示日期时间但$datetime它只是空白,我错过了什么?

得到

function getA($campo)
{
    return(htmlspecialchars(antiinjection($_REQUEST[$campo]), ENT_QUOTES));
}

标签: php

解决方案


您正在将“fechalimite”的文字字符串传递给 strtotime(),它将返回 false。

忽略您的 getA 函数,只需将请求变量传递给 strtotime:

$fecha = strtotime($_REQUEST['fechalimite']);

绝对没有理由在将值传递给 date() 之前尝试对 HTML 实体进行编码。您应该只在生成输出时对实体进行编码。


推荐阅读