Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1243 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  objet date defaillant???

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

objet date defaillant???

n°1472862
red factio​n
Posté le 09-11-2006 à 13:06:31  profilanswer
 

ct est un objet de type Date

Code :
  1. alert(ct.getDate()+'/'+(ct.getMonth()+1)+'/'+ct.getFullYear()+' '+ct.getHours()+':'+ct.getMinutes()+
  2. ':'+ct.getSeconds()+' '+Math.floor(ct.getTime()/1000)); //+1 est necessaire car en javascript les mois sont des 0 a 11...  
  3. //je divise par 1000 car ca renvoie le nombre de secondes , or je voudrais le temps Unix....


, au runtime il m'affiche:
 
16/10/2006 0:0:0 1160949600
 
or si je passe le timestamp dans un converter  (http://www.onlineconversion.com/unix_time.htm) j'obtiens :
 
Sun, 15 Oct 2006 22:00:00 GMT
 
(normalement le timestamp aurait du etre 1160956800)
 
perso je vois pas ou je me suis planté


Message édité par red faction le 09-11-2006 à 13:47:37
mood
Publicité
Posté le 09-11-2006 à 13:06:31  profilanswer
 

n°1473072
red factio​n
Posté le 09-11-2006 à 15:56:37  profilanswer
 

[:yoyoz] j'en ai vraiment besoin
 

n°1473085
anapajari
s/travail/glanding on hfr/gs;
Posté le 09-11-2006 à 16:15:10  profilanswer
 

Tu t'emmerdes pour rien à mon avis...  
J'aurais fait un truc dans le genre:

Code :
  1. function toUnixTimestamp(d){
  2.   return Math.floor((d - new Date(1970,0,1))/1000);
  3. }
  4.   ...
  5.   var taDate = new Date();
  6.   alert(toUnixTimestamp(taDate));


Et genre si tu veux vraiment te la péter, tu la rajoutes dans le prototype de Date;

Code :
  1. Date.prototype.toUnixTimestamp = function (){
  2.   return Math.floor((this - new Date(1970,0,1))/1000);
  3. }
  4. //et du coup tu peux faire direct
  5. alert(taDate.toUnixTimestamp());


Message édité par anapajari le 09-11-2006 à 16:15:41
n°1473099
red factio​n
Posté le 09-11-2006 à 16:37:18  profilanswer
 

merci pour tes conseils  
 
enfait jutilise date car il me sert aussi a afficher un calendrier style google calendar (il s'agit d'un agenda)
 
et c bien pratique de faire ct.setDate(ct.getDate+1) entre chaque cellule  
puis des ct.getDay pour savoir si c un weekend, etc...

n°1473117
anapajari
s/travail/glanding on hfr/gs;
Posté le 09-11-2006 à 17:00:06  profilanswer
 

je t'ai jamais dit de pas l'utiliser l'objet date, au contraire je t'ai donné la façon pour lui rajouter une methode toUnixTimestamp !!!

n°1473395
red factio​n
Posté le 10-11-2006 à 11:39:48  profilanswer
 

new Date(1970,0,1) me renvoie -3600 cad une heure avant 1970 est ce normal???? (new Date(1970,0,1,1,0,0) me renvoi bien 0 lui)
 
soustraire par zero est il vraiment necessaire ????
 
 
sinon   return Math.floor((pDate - new Date(1970,0,1,1,0,0))/1000); me renvoi toujours bel est bien 1160949600 cad que nous sommes toujours le  Sun, 15 Oct 2006 22:00:00 GMT  :sweat:  
 
soit JS cest de la merde soit je c pas lutiliser...

n°1473404
anapajari
s/travail/glanding on hfr/gs;
Posté le 10-11-2006 à 11:48:48  profilanswer
 

La soustraction par zéro comme tu dis c'est une ruse.
Quand tu fais la soustraction entre deux objets de type date, ça te renvoie le nombre de millisecondes entre ceux deux dates.
 
Sinon j'ai testé le code que je t'avais donné et ça marche très bien:

Code :
  1. Date.prototype.toUnixTimestamp = function(){
  2.     return Math.floor((this - new Date(1970,0,1))/1000);
  3.   }
  4.   var taDate = new Date();
  5.   alert(taDate.toUnixTimestamp());


donne "1163159076"  soit  "Fri, 10 Nov 2006 11:44:36 GMT"
 
T'es sur que ton ordi est à la bonne date?

n°1473425
red factio​n
Posté le 10-11-2006 à 12:10:51  profilanswer
 

j'y comprends plus rien  
 
1160949600 me donne le 15 octobre sur le site que jai donné dans le premier poste (et sur dautre site du genre aussi)
 
tandis que 1160949600 me donne 16/10/2006 12:00:00  avec un formatage date('d/m/Y h:i:s',1160949600) par php....
EDIT : javais pa rafraichi la page donc pa vu ton post


Message édité par red faction le 10-11-2006 à 12:29:54
n°1473431
red factio​n
Posté le 10-11-2006 à 12:34:57  profilanswer
 

je pense que ca depent du timeZone, par exemple ici il donnent un time zone et les resultat peuvent differer http://www.4webhelp.net/us/timesta [...] timezone=0
 
peut etre que php et javascript utilisent aussi des timezone... mais ne lindique pa,  
 
ex : javascript utiliserait un timezone -2 par rapport a php ce qui expliquerait le decalage...

n°1473451
anapajari
s/travail/glanding on hfr/gs;
Posté le 10-11-2006 à 13:32:37  profilanswer
 

comment tu construis l'objet date sur lequel tu fais ton test?
Tu aurais pas omis d'utiliser les fonctions setUTC* ?


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  objet date defaillant???

 

Sujets relatifs
[PHP SOAP SESSIONS] Monter en session un objet soapClientProblème de logique objet
XSLT interval de dateHauteur variable d'un objet
objet vb.net webbrowser : ouvrir dans le navigateur par défaut ?Problème en php objet
Date du 1er jour d'une semaine donnéeimbriquer un objet <form>
[ACCESS] Comment faire une recherche précise sur une date?Ouvrir etat pour une semaine donnee a partir d'une date entree form
Plus de sujets relatifs à : objet date defaillant???


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR