PHP 동적 막대 그래프 개선 판 구현
앞 에 동적 막대 그래프 만 만 만 들 면 원 리 는 간단 하 다 고 적 혀 있다.어제 오후 에 새로운 수요 가 있 었 기 때문에 오늘 오전 에 또 한 번 수정 하고 데 이 터 를 번호 에 따라 나 누 어 표 에 표시 했다.
다음 에 코드 를 붙 여서 나중에 직접 볼 수 있 도록 하 겠 습 니 다.생각 은 일시적인 불꽃 일 뿐 입 니 다.오늘 은 제 가 이렇게 하고 싶 습 니 다.다음 에 도 생각 할 수 있 는 것 이 아니 라 힘 들 게 생각 하지 않 아 도 되 기 때문에 필 기 를 하 는 것 이 좋 은 형식 입 니 다.
<!DOCTYPE html>
<?php
//
function last_month_today($time)
{
$last_month_time = mktime(date("G", $time), date("i", $time), date("s", $time), date("n", $time), 0, date("Y", $time));
$last_month_t = date("t", $last_month_time);
if ($last_month_t < date("j", $time)) {
return date("Y-m-t H:i:s", $last_month_time);
}
return date(date("Y-m", $last_month_time) . "-d", $time);
}
?>
<?php
include dirname(dirname(dirname(__FILE__))) . '/config.php';
$endDate = date('Y-m-d');
$date = strtotime($endDate);
$beginDate = last_month_today($date);
$sql = 'select count(*) from newpro where p_date>\'' . $beginDate . '\' and p_date<\'' . $endDate . '\'';
$d = db()->query($sql)->fetch(PDO::FETCH_NUM);
$sql2 = $sql . ' and is_pa_check_first=1 and is_pa_check_second=1 and is_pa_check_third=1';
$d2 = db()->query($sql2)->fetch(PDO::FETCH_NUM);
$sql3 = $sql . ' and is_pa_check_first=1';
$d3 = db()->query($sql3)->fetch(PDO::FETCH_NUM);
$sql4 = $sql . ' and is_pa_check_first=1 and is_pa_check_second=1';
$d4 = db()->query($sql4)->fetch(PDO::FETCH_NUM);
// :
$sqlab = 'select d_m,sum(sroce) as total_score,count(d_m) as total_number
from newpro
where is_pa_check_first=1
and is_pa_check_second=1
and is_pa_check_third =1
group by d_m';
$row = db()->query($sqlab)->fetchAll(PDO::FETCH_ASSOC);
?>
<html>
<head>
<meta charset="utf-8" />
<style>
div {
background-color: #669900;
width: 50px;
}
#div1 {
height: 200px;
}
#table td {
}
</style>
<script type="text/javascript" src="../../../js/jquery-1.7.2.min.js"></script>
</head>
<body>
<h3 align="center"> </h3>
<table border="0" align="center" id="table1">
<caption>
<?php echo " :".$beginDate." ".$endDate?>
</caption>
<tr align="center" valign="bottom">
<td>
<p><?php echo $d[0]?></p>
<div id="div1"></div>
</td>
<td>
<p><?php echo $d3[0]?></p>
<div style="height:<?php $str=floor(($d3[0]/$d[0])*200); echo $str.'px'?>"></div>
</td>
<td>
<p><?php echo $d4[0]?></p>
<div style="height:<?php $str=floor(($d4[0]/$d[0])*200); echo $str.'px'?>"></div>
</td>
<td>
<p><?php echo $d2[0]?></p>
<div style="height:<?php $str=floor(($d2[0]/$d[0])*200); echo $str.'px'?>"></div>
</td>
</tr>
<tr align="center" valign="top">
<td><p> </p></td>
<td><p> </p></td>
<td><p> </p></td>
<td><p> </p></td>
</tr>
</table>
<h3 align="center"> </h3>
<table border="0" width="100%">
<caption> :</caption>
<!-- , , , 。
, , 。
-->
<?php
$arr = array_chunk($row,2,false);//2 ,false 0
foreach($arr as $newRow){
$thStr = "<th style='background-color:#669900' width='110px' height='30px'> </th>";
$trStr_total_score = "<tr align='center' style='background-color:silver' height='25px'><td> </td>";
$trStr_total_number = "<tr align='center' style='background-color:silver' height='25px'><td> </td>";
$trStr_average_score = "<tr align='center' style='background-color:silver' height='25px'><td> </td>";
$resultStr = "";
foreach ($newRow as $key => $value) {
// echo $key."=>".$value."<br/>";
$x = 0;
foreach ($value as $key2 => $value2) {
// echo $key2 . "=>" . $value2 . "<br/>";
if ($key2 == 'd_m') {
$thStr .= "<th style='background-color:#669900'>" . $value2 . "</th>"; //
} elseif ($key2 == 'total_score') {
$value2 = sprintf("%.2f", $value2); // 2
$trStr_total_score .= "<td>" . $value2 . "</td>";
$x += $value2;
} elseif ($key2 == 'total_number') {
$trStr_total_number .= "<td>" . $value2 . "</td>";
$x /= $value2;
}
}
$x = sprintf("%.2f",$x);
$trStr_average_score .= "<td>" . $x . "</td>";
}
echo "<table border='0' width='100%'>";
echo $thStr;
echo $trStr_total_number . "</tr>";
echo $trStr_total_score . "</tr>";
echo $trStr_average_score . "</tr>";
echo "</table>";
echo "<p height='150px'></p>";
}
?>
</table>
</body>
</html>
데이터 베 이 스 는 편리 하면 하지 않 습 니 다.사실은 조회 한 표 이름과 필드 이름 에 따라 테스트 데이터 표를 만 들 기 쉽 습 니 다.관건 은 사고방식 이다.아무리 변해 도 사고방식 이 관건 이다.코드 의 효 과 를 더욱 편리 하 게 이해 하기 위해 캡 처 를 하 세 요.
본 논문 에서 말 한 것 이 여러분 의 phop 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
laravel에 yo에서 angularJs&coffeescript를 사용할 수 있도록 한다.먼저 yo 명령을 사용할 수 있어야하므로 아래에서 설치 global에 설치한 곳에서 laravel의 프로젝트 루트로 이동. 클라이언트 코드를 관리하는 디렉토리를 만들고 이동합니다. 클라이언트 환경 만들기 이것으로 히...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.