Php 在mysql数据库中使用事件保存日期

Php 在mysql数据库中使用事件保存日期,php,mysql,Php,Mysql,我试图在数据库中插入带有事件的日期,首先我用日期和文本区域填充表, 如图所示,。填充textarea后,您将点击submit将事件保存到数据库中,假设只存储带有值的textarea,但是正在发生的事情是,即使没有输入事件,所有日期都在保存 下面是保存在数据库中的代码 if(isset($_POST['submit_calendar'])) { $memo = $_POST['memo']; $cMonth = $_

我试图在数据库中插入带有事件的日期,首先我用日期和文本区域填充表, 如图所示,。填充textarea后,您将点击submit将事件保存到数据库中,假设只存储带有值的textarea,但是正在发生的事情是,即使没有输入事件,所有日期都在保存

下面是保存在数据库中的代码

 if(isset($_POST['submit_calendar']))
        {
                $memo = $_POST['memo'];
                $cMonth = $_POST['cal_month'];
                $cYear = $_POST['cal_year'];

                $timestamp = mktime(0,0,0,$cMonth,1,$cYear);
                $maxday = date("t",$timestamp);
                $thismonth = getdate ($timestamp);
                $startday = $thismonth['wday'];

                for ($i=0; $i<$maxday+$startday; $i++) 
                {
                    if($i < $startday) continue;

                    if($memo == NULL)
                    {
                        $i++;
                        continue;
                    }
                    else    
                    {
                        $date = $cYear."/".$cMonth."/".($i-$startday+1);
                        $event = $memo[$i-$startday];

                        $query = "INSERT INTO calendar SET cal_date='$date', cal_event='$event'";
                        $q = mysql_query($query);
                    }
                }   
        }
if(设置($\u POST['submit\u calendar']))
{
$memo=$_POST['memo'];
$cMonth=$\u POST['cal\u month'];
$cYear=$_POST['cal_year'];
$timestamp=mktime(0,0,0,$cMonth,1,$cYear);
$maxday=日期(“t”,时间戳为$timestamp);
$thismonth=getdate($timestamp);
$startday=$thismonth['wday'];
对于($i=0;$i尝试


检查事件是否已填充。如果已填充,则插入。它起作用,但如果($event==NULL)与if有什么区别,如果变量未设置任何值,则会考虑NULL。因此,在您的情况下,如果有空间,则$event==NULL将失败。您不认为!空(trim($memo))会更优雅吗?顺便说一句,我不确定你想要完成什么,但是如果你想用一次提交保存多个备忘录,你的代码就不能工作
if(strlen(trim($event))>0){
  $query = "INSERT INTO calendar SET cal_date='$date', cal_event='$event'";
}