it-swarm.com.de

Wie füge ich 5 Stunden zu einem Datums- / Uhrzeitstempel hinzu?

Ich habe eine Bearbeitungsspalte in der Datenbank eingerichtet, die bei jeder Änderung des Datenbankeintrags die richtige Zeit stempelt. Aus irgendeinem Grund wird bei jeder Anzeige dieses Datums 5 Stunden nach dem Zeitstempel in der Datenbank angezeigt.

Das einzige, was ich tun kann, ist, die Zeit um 5 Stunden zu verlängern, aber ich kann anscheinend keine Kombination aus den Online-Beispielen finden, um einfach 5 Stunden zur Marke hinzuzufügen. Ich hatte gehofft, jemand könnte mir helfen.

if ($comment->deleted == 1) {  } else { 

   $db = JFactory::getDbo();
   $db->setQuery('SELECT editdate 
                  FROM #__jcomments
                  WHERE id = ' . $comment->id .'');
   $db->loadResult();
   $edit = $db->loadResult();

   if ($edit > 0) { 
   echo JHtml::_('date', $edit, JText::_('l F j Y g:ia'));  } }
1
Mythic

Standardmäßig berücksichtigt JHtml::date() die Zeitzone des Benutzers. Wenn diese nicht festgelegt ist, wird standardmäßig die Zeitzone der Site verwendet (in der globalen Konfiguration festgelegt). Übergeben Sie ein weiteres Argument mit dem Wert null, um das Datum unverändert zu lassen. Da Sie eine fest codierte Zeichenfolge für das Format verwenden, müssen Sie sie auch nicht in JText::_() einschließen:

echo JHtml::_('date', $edit, 'l F j Y g:ia', null);

Sie sollten auch die erste Instanz von $db->loadResult() entfernen. Mit zwei davon führen Sie die Abfrage zweimal aus.

3
Sharky