J'ai mis en place une colonne d'édition dans la base de données, elle marque l'heure correcte chaque fois qu'une modification est apportée à l'entrée de la base de données. Pour une raison quelconque, chaque fois que cette date et l'heure sont affichées, il affiche 5 heures de retard sur l'horodatage dans la base de données.
La seule chose que je puisse comprendre est d’ajouter 5 heures à l’heure, mais il me semble impossible d’obtenir des combinaisons parmi les exemples en ligne, mais simplement d’ajouter 5 heures au tampon. J'espérais que quelqu'un pourrait m'aider.
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')); } }
Par défaut, JHtml::date()
représente le fuseau horaire de l'utilisateur, qui, s'il n'est pas défini, correspond au fuseau horaire du site (défini dans la configuration globale). Passez un autre argument avec la valeur null
pour laisser la date telle quelle. De plus, comme vous utilisez une chaîne codée en dur pour le format, vous n'avez pas besoin de l'envelopper dans JText::_()
:
echo JHtml::_('date', $edit, 'l F j Y g:ia', null);
Vous devez également supprimer la première instance de $db->loadResult()
. En ayant deux d'entre eux, vous exécutez la requête deux fois.