Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在日历上显示数据库中的事件_Php_Mysql_Calendar - Fatal编程技术网

Php 在日历上显示数据库中的事件

Php 在日历上显示数据库中的事件,php,mysql,calendar,Php,Mysql,Calendar,我正在创建一个日历,显示存储在数据库中的带有日期的事件。日历显示一年中的当前月份。我试图查询数据库中的事件,但问题是,最后一个值是唯一显示的值。此外,我不知道如何查询具有相同日期的事件。这是我做的语法。有什么想法吗 $query = "SELECT cal_event, cal_date FROM calendar WHERE YEAR(cal_date) = $cYear AND MONTH(cal_date) = $cMonth"; $q =

我正在创建一个日历,显示存储在数据库中的带有日期的事件。日历显示一年中的当前月份。我试图查询数据库中的事件,但问题是,最后一个值是唯一显示的值。此外,我不知道如何查询具有相同日期的事件。这是我做的语法。有什么想法吗

$query = "SELECT cal_event, cal_date FROM calendar WHERE YEAR(cal_date) = $cYear AND MONTH(cal_date) = $cMonth";

                        $q = mysql_query($query);

                        while($rs = mysql_fetch_array($q))
                        {

                            $events = $rs['cal_event'];
                            $event_day = date("j", strtotime($rs['cal_date']));
                        }

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

                        if(($i % 7) == 0 ) echo "<tr >";
                        if($i < $startday) echo "<td style='border:3px solid #fff;background-color:#fff'></td>";
                        else 
                            if($i <= $maxday+$startday)
                                    {
                                        echo "<td align='center' valign='middle' height='83px' style='border:3px solid #fff;background-color:#d9d9d9' ><span style='float:right;font-weight:bold'>" .($i - $startday + 1) ."</span><br><textarea name=''  maxlength='50' style='width:108px; height:50px; resize:none;'>";

                                        if($event_day == $i - $startday + 1) echo $events; 
                                        echo "</textarea></td>";   
                                    }
                        if(($i % 7) == 6 ) echo "</tr>";
                    }
$query=“从日历中选择校准事件、校准日期,其中年(校准日期)=$cYear和月(校准日期)=$cMonth”;
$q=mysql\u查询($query);
而($rs=mysql\u fetch\u数组($q))
{
$events=$rs['cal_event'];
$event_day=日期(“j”,标准时间($rs['cal_date']);
}

对于($i=0;$i)来说,除了必须提到不应该使用“mysql_”函数之外,代码中至少有一个逻辑错误

while
循环:

                    while($rs = mysql_fetch_array($q))
                    {

                        $events = $rs['cal_event'];
                        $event_day = date("j", strtotime($rs['cal_date']));
                    }

正在循环所有结果,但没有对其执行任何操作。因此,变量
$events
$event\u day
将设置为遇到的最后一个值。您可能应该在该循环中执行一些操作。

我测试了将for循环放入while循环中,但它会重复生成日历。
                    while($rs = mysql_fetch_array($q))
                    {

                        $events = $rs['cal_event'];
                        $event_day = date("j", strtotime($rs['cal_date']));
                    }