Jump to content

heure totalement incoherente sur mon prestashop lors d'un changement de statut


Recommended Posts

Bonjour,

j'ai un gros probleme bien embêtant... lorsque je change de statut de commande une commande, le statut changé a 2h de retard par rapport a mon statut existant de base lors de la remonté de commande :

ci joint un screen d'un commande que je viens de changer de statut de paiement accepté à la poste.

On vois bien que la poste passe en dessous car anti daté de 2h alors que je viens de le faire a l'instant !

j'ai tout verifié ;

-la date sur ma bdd (correct)

-le fuseau horaire dans localisation (europe/paris)

-modification de config (avec directement timezone euope/paris).

Rien n'y fais ! j'ai constamment ce même probleme de retard horaire et d'antidatage je suis entrain de craquer.

avez vous une idée??

-

9.JPG

Link to comment
Share on other sites

bonjour,

comment puis-je le modifier?

je viens de faire un test;

j'ai mis ma timezone de presta en midway donc 21h; et portant lorsque jeje creer une commande la commande reste a une heure differente (je vous joint 2screens).

je suis allez voir dans php.ini 

et je vois cette ligne : opcache.validate_timestamps=2;

jai mis 0 la place mais ça n'a rien changé car c'est du cache non? 

comment faire?

11.JPG

10.JPG

Link to comment
Share on other sites

avant de commencer à bricoler des paramètres au pif, il serait bon de lire à quoi ils servent. Je sais que statistiquement un singe peut rédiger du Shakespeare en tapant au hasard sur un clavier, mais seulement statistiquement ...

[Date]
date.timezone = "Europe/Paris"

 

Link to comment
Share on other sites

bonjour, j'ai deja contacté mon herbergeur ! tous les ssd sont a la meme heure ! heure d'été europe centrale donc l'heure actuelle.

pour eux ça ne viens pas du serveur mais du logiciel !

j'ai l'impression d'être une balle de ping pong je ne sais pas ou donner de la tête.

Link to comment
Share on other sites

donc en gros je pars dans la mauvaise direction mais pourquoi mon presta prend l'heure utc cela viendrais donc d'un module ou d'un plugins qui passe au dessus et met sa timezone par defaut? je ne vois que ça.

Link to comment
Share on other sites

j'ai continué de chercher et je suis allez jusqu'a dans class>order>ordehystory voir comment la date était generé et j'ai trouvé ça :

class OrderHistoryCore extends ObjectModel
{
    /** @var int Order id */
    public $id_order;

    /** @var int Order status id */
    public $id_order_state;

    /** @var int Employee id for this history entry */
    public $id_employee;

    /** @var string Object creation date */
    public $date_add;

    /** @var string Object last modification date */
    public $date_upd;

ça peux avoir un rapport?

Link to comment
Share on other sites

je suis allez voir dans objectmodel.php et j'ai trouvé la date_add

jai remplacé ça 

if ($auto_date && property_exists($this, 'date_add')) {
            $this->date_add = date('Y-m-d H:i:s');
        }
        if ($auto_date && property_exists($this, 'date_upd')) {
            $this->date_upd = date('Y-m-d H:i:s');

par ça :

if ($auto_date && property_exists($this, 'date_add')) {
            $this->date_add = date('Y-m-d H:i:s', true, 'Europe/Paris');
        }
        if ($auto_date && property_exists($this, 'date_upd')) {
            $this->date_upd = date('Y-m-d H:i:s', true, 'Europe/Paris');

du coup le statut change mais je n'ai plus aucune date ni heure ensuite j'ai changé par ça :

if ($auto_date && property_exists($this, 'date_add')) {
            $this->date_add = date('Y-m-d H:i:s', time());
        }
        if ($auto_date && property_exists($this, 'date_upd')) {
            $this->date_upd = date('Y-m-d H:i:s', time());

et la je recupere l'heure mais toujours aucun changement ne puis-je pas modifier cette fonction time pour la forcer en europe /paris?

Link to comment
Share on other sites

bon il m'aura fallu 8h mais j'ai trouvé tout seul comme un grand 

class>order>objectmodel.php

ligne 469 remplacer les 7 lignes par :

 if ($auto_date && property_exists($this, 'date_add')) {
			if(isset($this -> id_employee )){
            $this->date_add = date('Y-m-d H:i:s',strtotime('+2 hours'));
			}
			else{
				$this->date_add = date('Y-m-d H:i:s');
			}
        }

Dommage que communauté soit si peu dans l'entraide et autant dans l'enigme. m'enfn je partage la solution pour les gens comme moi en galere

Link to comment
Share on other sites

La communauté ne peut pas t'aider quand le problème est spécifique à ton environement.

Elle ne t'aidera pas non plus a écrire (saboter) le code pour qu'il ne fonctionne que dans le fin fond de l'aveyron et que si tu élèves des chèvres.

j'ajouterais que faire un remarque désobligeante en disant que nous parlons par énigme et la preuve d'un foutage de gueule complet, venant de quelqu'un même pas capable de nous donner la version exacte sur laquelle il veut de l'aide.

Bonjour chez-toi

 

Edited by doekia (see edit history)
Link to comment
Share on other sites

Il y a 22 heures, doekia a dit :

avant de commencer à bricoler des paramètres au pif, il serait bon de lire à quoi ils servent. Je sais que statistiquement un singe peut rédiger du Shakespeare en tapant au hasard sur un clavier, mais seulement statistiquement .

ah car t'es propos ne sont pas désobligeant? On est carrément au niveau de l'insulte la non? Je ne met pas en exergue le fais que vous puissiez m'aider ou que je doive trouver par moi-même je dénonce votre manque que courtoisie a l’égard d'autres être humains que vous considérez visiblement inférieur car moins compétent que vous dans le domaine des cms.

De plus parler par enigme du type :

Il y a 22 heures, doekia a dit :

[Date] date.timezone = "Europe/Paris"

n'a fais que m'embrouiller; d'ou ça sort? Ou le mettre? Est-ce cohérent? une petite phrase en dessous au lieu de me traiter de singe plus haut aurais peux être était apprécie.

je prefere n'avoir aucune informations plutôt qu'être considéré de la sorte.

J'ai l'impression que tous vos messages sur ce forum ne sont pas dans une dynamique d'aide mais plutôt quelques chose d'obligatoire, êtes vous en contrat avec prestashop ou utilisez vous le forum pour faire prendre des ticket de dépannage aux clients potentiel? Je ne sais pas, je vous remercie toute fois d'avoir pris le temps de lire et d’écrire sur mon topic cela reste apprécie.

bien a vous.

arthur

Link to comment
Share on other sites


 

Le 7/10/2019 à 10:26 AM, doekia a dit :

Problème lié à ton hébergement - définition de la timezone (php.ini)

 

Le 7/10/2019 à 10:59 AM, amz83 a dit :

 opcache.validate_timestamps=2;

jai mis 0 la place mais ça n'a rien changé

Le 7/10/2019 à 11:13 AM, doekia a dit :

avant de commencer à bricoler des paramètres au pif, il serait bon de lire à quoi ils servent

Je ne t'ai pas traité de singe, j'ai dit qu'il ne fallait espérer aucun résultat concret de coder au pif.

https://www.php.net/manual/fr/opcache.configuration.php#ini.opcache.validate-timestamps

Le 7/10/2019 à 11:13 AM, doekia a dit :

date.timezone = "Europe/Paris"

https://www.php.net/manual/fr/function.date-default-timezone-set.php
https://www.php.net/manual/fr/datetime.configuration.php#ini.date.timezone

Il y a 22 heures, amz83 a dit :

$this->date_add = date('Y-m-d H:i:s', true, 'Europe/Paris');

https://www.php.net/manual/fr/function.date.php
 

Il y a 18 heures, amz83 a dit :

class>order>objectmodel.php

 

Il y a 18 heures, amz83 a dit :

et autant dans l'enigme. m'enfn je partage la solution pour les gens comme moi en galere

Avec ces approximations, les pauvres !

 

Il y a 18 heures, amz83 a dit :

$this->date_add = date('Y-m-d H:i:s',strtotime('+2 hours'));

Tu n'oubliera pas désormais les derniers week-end d'Octobre et derniers week-end de Mars, d'aller changer cela dès que nous basculerons de l'heure d'été à l'heure d'hiver et vice et versa

https://fr.wikipedia.org/wiki/Heure_d'été#France

 

Mon but ici, n'est pas de te répondre, juste de mettre en garde les pauvres utilisateurs de ce forum afin qu'ils ne perdent pas leurs temps, ni ne sabotent leurs boutiques en écoutant tes propos.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...