php - 通知php
问题描述
我的应用程序有问题。我有一些通知,当到期日期在一个月内到期时,需要增加通知框。
加载代码,此代码检查日期是否接近。
<?php
$con = mysqli_connect("localhost","root","");
if(!$con){
echo"Not connect to Server";
}
if(!mysqli_select_db($con,'newusers')){
echo 'Database not select';
}
$dateToday = date("Y-m-d");
$datePlusYear = date('Y-m-d', strtotime("+1 year"));
$datePlus11Month = date('Y-m-d', strtotime("+11 months"));
$count = 0;
$countOcasional = 0;
$sql1 ="SELECT ID_colaborador, DataConsulta, DataNasc, DCO from colaboradores ";
$result1=mysqli_query($con,$sql1) or die("Query incorrecta: $sql1");
while($row1=mysqli_fetch_assoc($result1)){
$dataConsulta = $row1["DataConsulta"];
$dataNascimento =$row1["DataNasc"];
$dataConsultaOcasional = $row1["DCO"];
$dataLimite = $row1["DataLimite"];
if($dataConsultaOcasional != "" && $dataConsultaOcasional != NULL && $dataConsulta != "" && $dataConsulta != NULL ){
$DataConsulta_notificacao = date("Y-m-d", strtotime(date("Y-m-d", strtotime($dataConsulta)) . " -1 months"));
//$DataConsulta_notificacao = date("Y-m-d", strtotime(date("Y-m-d", strtotime($dataNascimento)) ));
$DataConsultaOcasional_notificacao = date("Y-m-d", strtotime(date("Y-m-d", strtotime($dataConsultaOcasional)) . " -1 months"));
$diasquefaltam= (int)((strtotime($dataLimite) - strtotime($dateToday))/(60*60*24));
$diasquefaltam1= (int)((strtotime($dataConsulta) - strtotime($dateToday))/(60*60*24));
if( ($diasquefaltam<=30 && $diasquefaltam>=0) &&($diasquefaltam1<=30 && $diasquefaltam1>=0)){
$count++;
}
else{
if($dataLimite < $dateToday ){
if($dataConsulta != "" && $dataConsulta != NULL ){
if(date($dateToday) - date($dataNascimento)<=49){
$dataConsulta_2Years = date("Y-m-d", strtotime(date("Y-m-d", strtotime($dataConsulta)) . "+2 year"));
$sql2='UPDATE colaboradores set DataConsulta = '.$dataConsulta_2Years.' where ID_colaborador = '.$row1["ID_colaborador"].' ';
$result2=mysqli_query($con,$sql2) or die("Query incorrecta: $sql2");
}
else{
if(date($dateToday) - date($dataNascimento)>49){
$dataConsulta_1Year = date("Y-m-d", strtotime(date("Y-m-d", strtotime($dataConsulta)) . "+1 year"));
$sql2='UPDATE colaboradores set DataConsulta = '.$dataConsulta_1Year.' where ID_colaborador = '.$row1["ID_colaborador"].' ';
$result2=mysqli_query($con,$sql2) or die("Query incorrecta: $sql2");
}
}
}
}
}
$daaf_notificacao = date("Y-m-d", strtotime(date("Y-m-d", strtotime($dataConsultaOcasional)) . " -1 months"));
$diasquefaltam_Ocasional= (int)((strtotime($dataConsultaOcasional) - strtotime($dateToday))/(60*60*24));
if($diasquefaltam_Ocasional<=30 && $diasquefaltam_Ocasional>=0 ){
$countOcasional++;
}
}
}
$array = array(
'Contador' => $count,
'ContadorOcasional' => $countOcasional
);
echo json_encode($array);
?>
脚本
<script>
$.ajax({ url: 'loadPaginaUtilizador.php',
type: 'get',
dataType: 'json',
success: function(output) {
//alert(output);
$("#counterNotif").text(output.Contador),
$("#counterNotif2").text(output.ContadorOcasional)
},
error: function(e){
alert(e),
}
});
</script>
HTML 代码:
<ul class="nav navbar bg-3">
<li><a href="GestaoAgendamentosPeriodicos.php">Agendamentos Ocasionais  <i class="icon-globe"></i><span id="counterNotif2" class="notification-counter">0</span></a></li>
</ul>
问题是,通知始终为 0,这是一次工作,当我使用中间页面(按顺序排列数据)来达到此目的时停止工作。
你能帮助我吗
解决方案
推荐阅读
- c# - 模拟 url 在单元测试中调用
- r - `stringr::str_replace()` 用于列表或替换——但只返回一个输出
- jquery - 为什么单击按钮时我的局部视图没有呈现?
- javascript - 你如何用 JavaScript for VueJS 计算今天的日期?
- c# - c#asp.net动态生成按钮
- cron - 无法运行打开终端窗口的 cron 作业
- jenkins - 詹金斯构建中的空csv
- python - 有没有一种方法可以轻松地将 2 个索引之间的所有元素放入 Python 中的嵌套列表中?
- shell - 在所有列中使用 awk 移动平均
- unit-testing - 意外调用模拟(gomock)gRPC