2015-11-06 1 views
1

Я пытаюсь добавить столбец в таблицу моей базы данных, которая показывает разницу между меткой времени и текущей датой. Я попытался создать другой запрос с помощью DateDiff, но я не уверен, что я делаю неправильно. Может ли кто-нибудь помочь?Добавление столбца DateDiff в таблицу PHP с использованием MySQLI

Мой код ниже.

<?php 
      $result = mysqli_query($con,"SELECT * FROM pokemon ORDER BY stats"); 

      echo "<table border='1'> 
      <tr> 
      <th>Pokemon Name</th> 
      <th>Type One</th> 
      <th>Type Two</th> 
      <th>Move One</th> 
      <th>Move Two</th> 
      <th>Move Three</th> 
      <th>Move Four</th> 
      <th>Stats</th> 
      <th>ID</th> 
      <th>Date Added</th> 
      <th>Days on File</th> 
      </tr>"; 

      while($row = mysqli_fetch_array($result)) 
      { 
       $query = "SELECT DATEDIFF(CURDATE, $row[dAdded])FROM pokemon AS days"; 
       $date = mysqli_query($con, $query); 


      echo "<tr>"; 
      echo "<td>" . $row['pName'] . "</td>"; 
      echo "<td>" . $row['type1'] . "</td>"; 
      echo "<td>" . $row['type2'] . "</td>"; 
      echo "<td>" . $row['move1'] . "</td>"; 
      echo "<td>" . $row['move2'] . "</td>"; 
      echo "<td>" . $row['move3'] . "</td>"; 
      echo "<td>" . $row['move4'] . "</td>"; 
      echo "<td>" . $row['stats'] . "</td>"; 
      echo "<td>" . $row['ID'] . "</td>"; 
      echo "<td>" . $row['dAdded'] . "</td>"; 
      echo "<td>" . $date . "days</td>"; 
      echo "</tr>"; 
      } 
      echo "</table>"; 
     ?> 

ответ

0

Я подозреваю, что проблема находится в пределах вашей DATEDIFF() функции, более конкретно с $row[dAdded]. Разве это не должно быть $row['dAdded'] с кавычками? А также считаю, что CURDATE нуждается в скобках, таких как CURDATE().

DATEDIFF(CURDATE(), $row['dAdded']) 
1

Вы можете добавить датированный исходный запрос. Вам также нужно будет использовать fetch_assoc, а не fetch_array, чтобы вы могли ссылаться на имена полей в строке $.

$result = mysqli_query($con,"SELECT *, DATEDIFF(CURDATE, dAdded) as dDate FROM pokemon ORDER BY stats"); 
while($row = mysqli_fetch_assoc($result)) 
{ 

} 
+0

Это приятное дополнение и меньше накладных расходов :) – camelCase