2016-07-21 7 views
0

Ich bin sehr neu in jQuery und JavaScript. Ich habe eine kleine Frage. Lassen Sie uns sagen, dass ich wie folgtWie kann ich eine Zeile markieren, wenn das Datum älter als gestern ist

haben
<?php 
    include 'dbconnect.php'; 

    $sql = "SELECT * FROM Comments";    

    $result = mysqli_query($conn,$sql); 
    if (!$result) { 
     echo '<div>no comments were set up</div>'; 
    } 
    $fields_num = mysqli_num_fields($result); 

    echo "<h1>Table: {$table}</h1>"; 
    echo "<table id='myTable' border='1'><tr>"; 
    // printing table headers 
    for($i=0; $i<$fields_num; $i++) 
    { 
     $field = mysqli_fetch_field($result);      
     echo "<td>{$field->name}</td>";      
    } 
    echo "</tr>\n"; 
    // printing table rows 
    while($row = mysqli_fetch_row($result)) 
    { 
     echo "<tr>"; 

     // $row is array... foreach(..) puts every element 
     // of $row to $cell variable 
     foreach($row as $cell) 
     echo "<td>$cell</td>"; 
     //delete button 
     echo "<td><input type='button' value='Delete' onclick='deleteRow(this)'></td>"; 
     //checkbox button 
     echo "<td><input type='checkbox' value='Highlight' onclick='highlight(this)'></td>"; 
     echo "</tr>\n"; 
    } 
    mysqli_free_result($result);    
?> 

Ich möchte überprüfen, ob das Datum in der 8. Spalte eine HTML-Tabelle ist älter als einen Tag sollte die Zeile markiert. Wie kann ich fortfahren?

fand ich einen Code, aber das funktioniert nicht:

  function checkdate(){ 
      $('#myTable tr td').each(function() { 
      var dtTd = new Date($(this).html()); 
      var dtNew = new Date(); 
      // 15 minutes is 900000 milliseconds 
     // getTime() doc - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getTime 
      if (dtTd.getTime() - dtNew.getTime() < 900000 && dtNew < dtTd) { 
      $(this).css("background-color", "red"); 
      } else { 
      if (dtNew > dtTd) { 
      $(this).css("background-color", "yellow"); 
      } 
      } 
      }); 
      } 
+2

das Datum Lesen Sie in der 8. Spalte, zu vergleichen, wenn älter als eine andere CSS-Klasse verwenden –

+0

Sie brauchen Markieren Sie dieses td 'echo" ";'? –

+0

Warum sollten Sie dies in jQuery tun, wenn Sie dies zum Zeitpunkt der Generierung in PHP tun können? –

Antwort

0

Versuchen Sie folgendes:

$date = date('Y-m-d'); 
foreach($row as $cell) 
{ 
    if($cell['date'] < $date) 
    { 
     // for date less then today's date 
    } 
    else 
    { 
     // for others date 
    } 
} 
+0

if ($ Zelle ['Datum'] <$ Datum) { Echo ''; } setzen Sie dies in wenn –

+0

dies funktioniert nicht. Ich habe den Tabellennamen, die Spaltenüberschrift, die ich suchen möchte, und es sollte älter sein als gestern. danke –

+0

der eingegebene Code ist: $ date = new Datum ('Y-m-d-h-m'); foreach ($ row als $ cell) { wenn ($ cell [ 'CommentsDate'] - $ date <24) { // für date less anschließend today's date } else { $ (dies). css ("Hintergrundfarbe", "gelb"); } } funktioniert nicht :( –

Verwandte Themen