php - 如何将 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));
}
解决方案
您正在将“fechalimite”的文字字符串传递给 strtotime(),它将返回 false。
忽略您的 getA 函数,只需将请求变量传递给 strtotime:
$fecha = strtotime($_REQUEST['fechalimite']);
绝对没有理由在将值传递给 date() 之前尝试对 HTML 实体进行编码。您应该只在生成输出时对实体进行编码。
推荐阅读
- xamarin.forms - Xamarin 社区工具包 AsynCommand 不工作
- swift - 是否可以滚动分层在 UITableView 之上的滚动视图?
- python - 我无法运行 streamlit
- javascript - 时间间隔未重置,但是相同的代码在另一个站点上运行良好
- gradle - Gradle:如何使用单个命令发布所有子项目?
- r - 关于在 Shiny 中在数据库和 selectinput 之间进行同步的疑问
- google-cloud-platform - 如何从云函数连接到云 sql 并且不返回 ENOENT 错误?
- r - 重新编码放置在列中的向量中的几个变量
- c# - Azure AD B2C 租户 ID 空
- push-notification - onesignal 通知在手机网络浏览器而不是应用程序中打开