php & mysql : problème affichage date - Programmation
Marsh Posté le 23-09-2001 à 16:45:09
j'ai oublier de préciser, la variable $arr2, c'est une ligne du résultat d'un requête SQL (sur un serveur MYSQl) et STAMP, c'est le nom d'un champ date.
Merci d'avance pour votre aide.
Marsh Posté le 23-09-2001 à 18:45:52
sûrement parce que ta syntaxe ressemble à celle d'un territoire inconnu. exemples sur php.net :
$today = date("F j, Y, g:i a" ); // March 10, 2001, 5:16 pm
$today = date("m.d.y" ); // 03.10.01
$today = date("j, m, Y" ); // 10, 3, 2001
$today = date("Ymd" ); // 20010310
$today = date('h-i-s, j-m-y, it is w Day z '; // 05-16-17, 10-03-01, 1631 1618 6 Fripm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.'; // It is the 10th day.
$today = date("D M j G:i:s T Y" ); // Sat Mar 10 15:16:08 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h'; // 17:03:17 m is month
$today = date("H:i:s" ); // 17:16:17
commence déjà par un truc simple ... et c'est quoi ces </no/br> ??
Marsh Posté le 23-09-2001 à 19:04:08
Les </no\br> servent à empêcheer un retour à la ligne entre deux morceaux de texte.
C'est pour être sur que le retour à la ligne se fasse exactement à l'endroit que je veux.
En épurant le code, ca donne :
echo date("d/m/Y H:i:s",$arr2[STAMP]);
Même comme ça, ca marche pas. j'ai l'impression que le problème viens du fait que la fonction date n'arrive pas à "lire" la valeur contenue par la variable $arr2[STAMP] .
Marsh Posté le 23-09-2001 à 19:08:36
le deuxième champ ça doit être un timestamp (tps Unix...) => juste pour préciser au cas où...
et autrement y'a un truc plutot bizarre... t'as pas d'erreur de syntaxe ?
essaie : $arr2['STAMP'];
Marsh Posté le 23-09-2001 à 19:35:36
petit test rapide, chez moi
echo date("\<\N\O\B\R\>d/m/Y\<\/\N\O\B\R\> \<\N\O\B\R\>H:i:s\<\/\N\O\B\R\>", 1000000000);
produit dans la source
<NOBR>09/09/2001</NOBR> <NOBR>03:46:40</NOBR>
et affiche
09/09/2001 03:46:40
[edtdd]--Message édité par youdontcare--[/edtdd]
Marsh Posté le 23-09-2001 à 19:47:46
Ca y est, j'ai compris.
En fait, la variable $arr2[STAMP] commence par 2001- (suivit du reste de la date et de l'heure).
La fonction date transforme le texte en nombre ce qui donne 2001 ce qui corresponds au 01/01/1970 01:33:21 .
Existe t'il une fonction pour transformer une date au format texte en un timestamp ?
Marsh Posté le 23-09-2001 à 19:56:02
ReplyMarsh Posté le 23-09-2001 à 20:05:06
Merci, Youdontcare, en définitive, je me suis mal exprimé. j'ai doncc à la sortie de Mysql une date sous la forme
YYYY-MM-DD HH:MM:SS
J'espérer qu'il existe une fonction qui prennent cette date et la transforme sous la forme d'un time stamp.
Sans ça, je devrais m'en faire une à coup de substr.
Marsh Posté le 23-09-2001 à 20:33:19
omega2 a écrit a écrit : Merci, Youdontcare, en définitive, je me suis mal exprimé. j'ai doncc à la sortie de Mysql une date sous la forme YYYY-MM-DD HH:MM:SS J'espérer qu'il existe une fonction qui prennent cette date et la transforme sous la forme d'un time stamp. Sans ça, je devrais m'en faire une à coup de substr. |
chacun ses goûts. lorsque j'avais besoin de la même fonctionnalité, je n'ai trouvé que mktime(), et j'y suis allé à coups d'explode()
Marsh Posté le 23-09-2001 à 16:30:26
Salut à tous, j'ai un petit problème, quand je fait :
echo date("<NO\BR>d/m/Y</NO\BR> <NO\BR>H:i:s</NO\BR>",$arr2[STAMP]);
J'obtiens comme affichage dans le navigateur :
01/01/1970 01:33:21
quel que soit la valuer de $arr2[STAMP]
Quand je fais
echo $arr2[STAMP];
c'est la bonne valeur qui est affiché. Pourquoi le première syntaxe marche pas et comment puije y remédier?