Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/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
连接到数据库mysql进行事件的php日历_Php_Mysql - Fatal编程技术网

连接到数据库mysql进行事件的php日历

连接到数据库mysql进行事件的php日历,php,mysql,Php,Mysql,所以我有一个非常简单的日历的代码,但是我不知道如何查询mysql数据库来查找每个月的每一天的事件。我知道如何在数据库中查询这些信息,但我不知道在创建日历的代码中应该将其放在哪里,或者如何构造日历或其他任何东西。我看了很多php日历的代码,对于每一个代码,我都无法从数据库中获取数据,我只是不知道怎么做。任何帮助都是感激的,谢谢。 编辑日历代码以包含数据库内容: include ("connection.php"); $date =time (); $day = date('d', $date

所以我有一个非常简单的日历的代码,但是我不知道如何查询mysql数据库来查找每个月的每一天的事件。我知道如何在数据库中查询这些信息,但我不知道在创建日历的代码中应该将其放在哪里,或者如何构造日历或其他任何东西。我看了很多php日历的代码,对于每一个代码,我都无法从数据库中获取数据,我只是不知道怎么做。任何帮助都是感激的,谢谢。 编辑日历代码以包含数据库内容:

include ("connection.php"); 

$date =time (); 
$day = date('d', $date); 
$month = date('m', $date); 
$month = $month + "02";
$year = date('Y', $date); 
$years = substr($year, 2, 2);

$first_day = mktime(0,0,0,$month, 1, $year); 
$title = date('F', $first_day); 
$day_of_week = date('D', $first_day); 
switch($day_of_week){ 
    case "Sun": $blank = 0; break; 
    case "Mon": $blank = 1; break; 
    case "Tue": $blank = 2; break; 
    case "Wed": $blank = 3; break; 
    case "Thu": $blank = 4; break; 
    case "Fri": $blank = 5; break; 
    case "Sat": $blank = 6; break; 
}

$days_in_month = cal_days_in_month(0, $month, $year);
echo "<table border=1 width=294>";
echo "<tr><th colspan=7> $title $year </th></tr>";
echo "<tr><td width=42>S</td><td width=42>M</td><td 
width=42>T</td><td width=42>W</td><td width=42>T</td><td 
width=42>F</td><td width=42>S</td></tr>";
$day_count = 1;
echo "<tr>";

while ( $blank > 0 ) 
{ 
    echo "<td></td>"; 
    $blank = $blank-1; 
    $day_count++;
} 
$day_num = 1;
 while ( $day_num <= $days_in_month ) 
{ 

echo "<td> $day_num <br/>";


$result = mysql_query("SELECT time, length FROM hire WHERE day = '$day_num' and month =    '$month' and year = '$years'") or die ('Error: '.mysql_error ());
include(“connection.php”);
$date=time();
$day=日期('d',$date);
$month=日期('m',$date);
$month=$month+“02”;
$year=日期('Y',$date);
$years=substr($year,2,2);
$first_day=mktime(0,0,0,$month,1,$year);
$title=日期('F',$first_day);
$day\u of_week=日期('D',$first\u day);
转换($每周的第天){
案例“Sun”:$blank=0;中断;
案例“Mon”:$blank=1;中断;
案例“Tue”:$blank=2;中断;
案例“Wed”:$blank=3;中断;
案例“Thu”:$blank=4;中断;
案例“Fri”:$blank=5;中断;
案例“Sat”:$blank=6;中断;
}
$days_in_month=cal_days_in_month(0,$month,$year);
回声“;
echo“$title$year”;
回声“SMTWTFS”;
$day_count=1;
回声“;
而($blank>0)
{ 
回声“;
$blank=$blank-1;
$day_count++;
} 
$day_num=1;
而($day_num 7)
{
回声“;
$day_count=1;
}
} 

当($day_count>1&&$day_count时,您需要将数据库代码放在输出日期单元格的位置。以下是代码:

<?php
include ("connection.php"); 

$date =time (); 
$day = date('d', $date); 
$month = date('m', $date); 
$month = $month + "01";
$year = date('Y', $date); 

$first_day = mktime(0,0,0,$month, 1, $year); 
$title = date('F', $first_day); 
$day_of_week = date('D', $first_day); 
switch($day_of_week){ 
    case "Sun": $blank = 0; break; 
    case "Mon": $blank = 1; break; 
    case "Tue": $blank = 2; break; 
    case "Wed": $blank = 3; break; 
    case "Thu": $blank = 4; break; 
    case "Fri": $blank = 5; break; 
    case "Sat": $blank = 6; break; 
}

$days_in_month = cal_days_in_month(0, $month, $year);
echo "<table border=1 width=294>";
echo "<tr><th colspan=7> $title $year </th></tr>";
echo "<tr><td width=42>S</td><td width=42>M</td><td width=42>T</td><td width=42>W</td><td width=42>T</td><td width=42>F</td><td width=42>S</td></tr>";
$day_count = 1;
echo "<tr>";

while ( $blank > 0 ) 
{ 
    echo "<td></td>"; 
    $blank = $blank-1; 
    $day_count++;
} 
$day_num = 1;
 while ( $day_num <= $days_in_month ) 
{ 
    //database code here
    $result = ''; //formatted html result
    echo "<td> $day_num $result</td>"; 
    $day_num++; 
    $day_count++;
    if ($day_count > 7)
    {
        echo "</tr><tr>";
        $day_count = 1;
    }
} 

while ( $day_count >1 && $day_count <=7 ) 
{ 
    echo "<td> </td>"; 
    $day_count++; 
} 

echo "</tr></table>"; 

hmm,但是每天的结果取决于日期,所以当我查询数据库时,day=$day\u num和month=$month?目前在我的数据库中,数据是日期格式的,例如2013-03-01,我必须更改它来存储日值、月值和年值?它会打印“时间:”和“长度”:但是没有任何结果并将其打印在日历上方lol,但是代码给出了时间和长度的结果,但不在日历内,有什么想法吗?哦,我现在已经设法在日历内得到了它,但是它不会产生结果,只有当我从日历中取出代码来测试它:我有数据要显示,但输出不是没有数据,或者,当它找到当天的数据时,它会输出当天和之后的每一天的数据,直到下一个新的数据段……您需要找到
$result
是否返回数据。即
$num_rows=mysql_num_rows($result);//mysql_uuif($num rows>0){echo“$result”}如果使用PDO,则{echo“$day_num”}
<?php
include ("connection.php"); 

$date =time (); 
$day = date('d', $date); 
$month = date('m', $date); 
$month = $month + "01";
$year = date('Y', $date); 

$first_day = mktime(0,0,0,$month, 1, $year); 
$title = date('F', $first_day); 
$day_of_week = date('D', $first_day); 
switch($day_of_week){ 
    case "Sun": $blank = 0; break; 
    case "Mon": $blank = 1; break; 
    case "Tue": $blank = 2; break; 
    case "Wed": $blank = 3; break; 
    case "Thu": $blank = 4; break; 
    case "Fri": $blank = 5; break; 
    case "Sat": $blank = 6; break; 
}

$days_in_month = cal_days_in_month(0, $month, $year);
echo "<table border=1 width=294>";
echo "<tr><th colspan=7> $title $year </th></tr>";
echo "<tr><td width=42>S</td><td width=42>M</td><td width=42>T</td><td width=42>W</td><td width=42>T</td><td width=42>F</td><td width=42>S</td></tr>";
$day_count = 1;
echo "<tr>";

while ( $blank > 0 ) 
{ 
    echo "<td></td>"; 
    $blank = $blank-1; 
    $day_count++;
} 
$day_num = 1;
 while ( $day_num <= $days_in_month ) 
{ 
    //database code here
    $result = ''; //formatted html result
    echo "<td> $day_num $result</td>"; 
    $day_num++; 
    $day_count++;
    if ($day_count > 7)
    {
        echo "</tr><tr>";
        $day_count = 1;
    }
} 

while ( $day_count >1 && $day_count <=7 ) 
{ 
    echo "<td> </td>"; 
    $day_count++; 
} 

echo "</tr></table>";