将jQuery数据表转换为服务器端php

将jQuery数据表转换为服务器端php,php,jquery,mysql,datatables,jquery-datatables,Php,Jquery,Mysql,Datatables,Jquery Datatables,从一开始——我并不是一个非常精通php的开发人员,所以对于你们中的一些人来说,这可能是一个很容易解决的问题。这就是说,我正在学习,并且非常欣赏任何关于为什么某些东西起作用/不起作用的见解。我以前在Datatables论坛上接触过,自己尝试过很多事情,但都没有成功 问题是: 我已经成功地在客户端完成了这项工作,并且获得了所有正确的格式。我正在努力使用此处的脚本转换为服务器端- 数据输入得很好,这是我正在努力解决的不同列的格式问题。下面是一个示例-我有一个列,使用客户端时看起来像这样: <td

从一开始——我并不是一个非常精通php的开发人员,所以对于你们中的一些人来说,这可能是一个很容易解决的问题。这就是说,我正在学习,并且非常欣赏任何关于为什么某些东西起作用/不起作用的见解。我以前在Datatables论坛上接触过,自己尝试过很多事情,但都没有成功

问题是:

我已经成功地在客户端完成了这项工作,并且获得了所有正确的格式。我正在努力使用此处的脚本转换为服务器端-

数据输入得很好,这是我正在努力解决的不同列的格式问题。下面是一个示例-我有一个列,使用客户端时看起来像这样:

<td>
  <div class="text-center">                                                                     
       <?php                                                                                     
           if( is_null($row["FIELD1"]))                                                       
               {echo "<div class=\"label label-inverse\">Not Started</div><div class=\"progress progress-warning slim\"><div class=\"bar\" style=\"width: 15%\"></div></div>";}                                  
           elseif( is_null($row["Final"]) && ($row["Status"]==='1') && is_null($row["Create"]))   
               {echo "<div class=\"label label-info\">In Progress</div><div class=\"progress progress-info slim\"><div class=\"bar\" style=\"width: 30%\"></div></div>";}                                        
           elseif( is_null($row["Final"]) && ($row["Status"]==='0') && ($row["MAP"]==='1') && is_null($row["Create"]))                                                                                       
               {echo "<div class=\"label label-info\">In Progress</div><div class=\"progress progress-info slim\"><div class=\"bar\" style=\"width: 20%\"></div></div>";}                                        
           elseif( is_null($row["Final"]) && ($row["Status"]==='0') && ($row["VAP"]==='1') && is_null($row["Create"]))                                                                                       
               {echo "<div class=\"label label-info\">In Progress</div><div class=\"progress progress-info slim\"><div class=\"bar\" style=\"width: 25%\"></div></div>";}
           elseif( is_null($row["Final"]) && ($row["Status"]==='0') && ($row["LAP"]==='1') && is_null($row["Create"]))                                                                                       
               {echo "<div class=\"label label-info\">In Progress</div><div class=\"progress progress-info slim\"><div class=\"bar\" style=\"width: 30%\"></div></div>";} 
           elseif( is_null($row["Final"]) && isset($row["Create"]) && is_null($row["Synch"]))          
               {echo "<div class=\"label label-info\">In Progress</div><div class=\"progress progress-info slim\"><div class=\"bar\" style=\"width: 45%\"></div></div>";}                                        
           elseif( is_null($row["Final"]) && isset($row["Synch"])  && is_null($row["Config"]))           
               {echo "<div class=\"label label-info\">In Progress</div><div class=\"progress progress-info slim\"><div class=\"bar\" style=\"width: 60%\"></div></div>";}                                        
           elseif( is_null($row["Final"]) && isset($row["Config"])  && is_null($row["AllSet"]))   
               {echo "<div class=\"label label-info\">In Progress</div><div class=\"progress progress-info slim\"><div class=\"bar\" style=\"width: 75%\"></div></div>";}                                        
           elseif( is_null($row["Final"]) && isset($row["AllSet"]))                      
               {echo "<div class=\"label label-info\">In Progress</div><div class=\"progress progress-info slim\"><div class=\"bar\" style=\"width: 90%\"></div></div>";}                                        
           else                                                                                  
               {echo "<div class=\"label label-success\">Completed</div><div>in ";} {echo($row["diff"]);} {echo "</div>";}
       ?>    
   </div>
</td>
像这样更简单的设置日期格式并将0或1的显示更改为是/否我已经能够弄清楚:

<td><div class="text-center"><?php echo date("m/d/Y H:i A", strtotime($row["SDate"]));?></div></td>
<td>
    <div class="text-center">
        <?php if( is_null($row["Status"])){echo "<div class=\"label label-warning\">Checking...</div>";}else{echo ($row["Status"] ? 'yes': 'no');}?>
     </div>
</td>
但我很难让这些附加条件起作用。感谢您的指导

更新:

显然我的例子太复杂了&没有抓住要点。下面是一个更简单的例子:

根据列“豁免”的状态,我希望显示检查是否为null,如果为1或0,则显示是或否。目前,运行的客户端代码如下所示:

 <td>
     <div>
         <?php 
              if( is_null($row["Exempt"]))
                  {echo "<div class=\"label label-warning\">Checking...</div>";}
              else 
                  {echo ($row["Exempt"] ? 'yes': 'no');}
         ?> 
     </div>
 </td>

你的问题是,另外10个怪物不是一列,而是至少11个不同列的计算输出。这是非常糟糕的数据库设计。您需要分离每一列的关注点,并找出它们各自的作用。我的意思是,很明显,如果状态是进行中的,那么Final是NULL,Created不是。如果启动了某物,会创建什么?谁知道呢。您需要定义您的列。正确,10 else monstrosy不是数据库中的一列-它是表中的一列,显示其他列中发生的情况的状态,因此它是不断变化的。数据库正在跟踪用户帐户的更改,从一个系统移动到另一个系统。也就是说,上面的10 else列仅用于显示目的。数据库本身的布局非常清晰。以另一种方式问这个问题:如何在上述所述格式的约束范围内执行if/else,以根据数据库中某个列的状态响应不同的内容?我希望这能澄清问题。
if ( $aColumns[$i] == "SDate" )                                                              
            {  
                $row[] = date("m/d/Y H:i A", strtotime(($aRow[ $aColumns[$i] ])));                            
            } 
else if ( $aColumns[$i] == "Status" )                                                              
           {  
                $row[] = ($aRow[ $aColumns[$i] ]) ? 'yes' : 'no';                                             
            }
 <td>
     <div>
         <?php 
              if( is_null($row["Exempt"]))
                  {echo "<div class=\"label label-warning\">Checking...</div>";}
              else 
                  {echo ($row["Exempt"] ? 'yes': 'no');}
         ?> 
     </div>
 </td>
 if ( $aColumns[$i] == "Exempt" )
 {
      $row[]= //?????I can't get this part to work correctly
 }