我有一个问题,有3个文本框输入postdate,title和content。当我处理它发送到mysql数据库。 Textbox postdate无法发送到mysql数据库。只发送标题和内容。
我需要你的帮助来解决这个错误。谢谢你的帮助
if(isset($_POST['submit'])){
$postdate=date($_POST['postdate']);
$title= htmlspecialchars($_POST['title']);
$content=$_POST['content'];
$sql=mysql_query("insert into national_news(postdate,title,content)values('$postdate','$title','$content')");
header("Location: nasional_news.php");
}
答案 0 :(得分:1)
如果日期来自用户那么为什么要使用date()
功能?试试这个:
if(isset($_POST['submit'])){
$postdate=mysql_real_escape_string(trim($_POST['postdate']));
$title= mysql_real_escape_string(trim($_POST['title']));
$content= mysql_real_escape_string(trim($_POST['content']));
$sql=mysql_query("insert into national_news(postdate,title,content)values('$postdate','$title','$content')");
header("Location: nasional_news.php");
}
答案 1 :(得分:0)
您的用户如何输入postdate
?除非用户实际输入“F m Y”之类的内容,否则你拥有的行$postdate=date($_POST['postdate']);
将毫无用处。查看php.net's date page
您应该接受postdate
而不通过date()
功能运行它。
答案 2 :(得分:0)
<?php
if(isset($_POST['submit']))
{
print_r($_POST);//Checking $_POST array values.
首先,您必须检查上一页中所有值发布的位置,然后继续使用您的代码。 如果选中,那么确保你的'postdate'列数据类型是'date'并且每次使用或die()使用query()来了解查询执行状态。
了解印度使用的当前日期时间
$dateTime = new DateTime("now", new DateTimeZone('Asia/Calcutta'));
$dt= $dateTime->format("Y-m-d H:i:s");//for India