[BDD] Ajouter un champ type DATE et TIME
Fermé
MOH show
-
10 avril 2009 à 19:47
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 - 13 avril 2009 à 21:51
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 - 13 avril 2009 à 21:51
A voir également:
- [BDD] Ajouter un champ type DATE et TIME
- Ajouter un compte gmail - Guide
- Quick time - Télécharger - Lecture
- Ajouter un compte whatsapp - Guide
- Ajouter signature word - Guide
9 réponses
C'est bon, j'ai trouver ^^
<?php
mysql_connect("url_base_de_donnée", "utilisateur", "mot_de_passe"); // Connexion à MySQL
mysql_select_db("nom_base_de_donnée"); // Sélection de la base
$nom = $_POST['nom']; //Contenu de la case nom de la radio
$urlflux = $_POST['urlflux']; // Contenu de la case url du flux
$date = date("Y-m-d"); // Date au format Année-Mois-Jour
$heure = date("H:i:s" ); // Heure au format Heure:Minute:Seconde
mysql_query("INSERT INTO radio values ('','$nom','$urlflux','$date','$heure')");
echo "<script language=\"JavaScript\">
setTimeout(\"window.location='javascript:history.back()'\",3000); // delai en millisecondes
</script>
<br>
<center>Votre proposition a été envoyer.</center> ";
mysql_close();
?>
-------------------------------------------------------------------------------------
Mais, le probleme avec la fonction 'date("H:i:s");', c'est que ca me donne l'heure du serveur de l'hebergeur. Mais le serveur ce trouve au canada, je suppose. Il y a 6 heure de decalage en moins par rapport à l'heure francaise.
Y a-t-il un moyen de modifier 'date("H:i:s");' de facon qu'il avance de 6 heures ???
<?php
mysql_connect("url_base_de_donnée", "utilisateur", "mot_de_passe"); // Connexion à MySQL
mysql_select_db("nom_base_de_donnée"); // Sélection de la base
$nom = $_POST['nom']; //Contenu de la case nom de la radio
$urlflux = $_POST['urlflux']; // Contenu de la case url du flux
$date = date("Y-m-d"); // Date au format Année-Mois-Jour
$heure = date("H:i:s" ); // Heure au format Heure:Minute:Seconde
mysql_query("INSERT INTO radio values ('','$nom','$urlflux','$date','$heure')");
echo "<script language=\"JavaScript\">
setTimeout(\"window.location='javascript:history.back()'\",3000); // delai en millisecondes
</script>
<br>
<center>Votre proposition a été envoyer.</center> ";
mysql_close();
?>
-------------------------------------------------------------------------------------
Mais, le probleme avec la fonction 'date("H:i:s");', c'est que ca me donne l'heure du serveur de l'hebergeur. Mais le serveur ce trouve au canada, je suppose. Il y a 6 heure de decalage en moins par rapport à l'heure francaise.
Y a-t-il un moyen de modifier 'date("H:i:s");' de facon qu'il avance de 6 heures ???
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
12 avril 2009 à 21:50
12 avril 2009 à 21:50
Ben tu peux calculer l'heure réelle.
Exemple:
Je pense que ça devrai faire l'affaire.
Exemple:
$heure = date('H'); $heure = $heure - 6; $date = ''.$heure.':'date('i:s').'';
Je pense que ça devrai faire l'affaire.
$date est deja utiliser pour la date (jour, mois et année), ici c'est par l'heure.Donc je vais plutot choisir $heurefr. ;)
Je vais testé pour voir si ca fonctionne.
$heure = date('H'); $heure = $heure - 6; $heurefr = ''.$heure.':'date('i:s').'';
Je vais testé pour voir si ca fonctionne.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Il y avais des erreurs, je les ai corrigées :
Mais ta methode n'ai pas juste... pour t'expliquer...
Il est 19:41:02 en Amerique (il faut 6 heure de plus pour la france).
Mais en faire le +6 (dans ta methode), dans ma base de donnée, l'heure affiche 25:41:02.
Il y a un probleme, là... non ??? ;)
$heure = date('H'); $heure = $heure + 6; $heurefr = date(''.$heure.':i:s');
Mais ta methode n'ai pas juste... pour t'expliquer...
Il est 19:41:02 en Amerique (il faut 6 heure de plus pour la france).
Mais en faire le +6 (dans ta methode), dans ma base de donnée, l'heure affiche 25:41:02.
Il y a un probleme, là... non ??? ;)
okuni
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
126
13 avril 2009 à 10:38
13 avril 2009 à 10:38
tu utilise un champ spécial de date d'SQL
Tu dois alors utilise le language SQL et c'est le plus simple ;)
exemple
en rajoutant NOW() tu insère une date de format yyyy-dd-mm hh:mm:ss
Ceci c'est a utiliser pour un champ datetime (mais tu peux l'utiliser partout, sql réduira simplement ta chaine avec les charactère indésirable.
sinon si tu veux être précis, pour un champ de type date, tu dois mettre CURDATE() et pour un champ time, c'est CURTIME()
EDIT : pour récupérer ta date, utilise ceci
dans ta requete sql au lieu de simplement mettre "date"
bien sur tu peux formater la date comme tu veux. tu dois juste mettre un "%" devant les lettres représentant une date/heure tu as entre autre (tu en a bcp plus)
y : l'année a 2 chiffres
Y : l'année a 4 chiffres
d : le jour à 2 chiffres (je ne suis plus sur)
m : le moi a 2 chiffres
H : l'heure
i : les minutes
s : les secondes
mais il y a plein d'autre format de date, cherche sur le net :)
voilà :)
et il n'y a rien a faire en php pour ceci :)
Tu dois alors utilise le language SQL et c'est le plus simple ;)
exemple
$query = "INSERT INTO table (titre,date) VALUES('$titre', NOW())";
en rajoutant NOW() tu insère une date de format yyyy-dd-mm hh:mm:ss
Ceci c'est a utiliser pour un champ datetime (mais tu peux l'utiliser partout, sql réduira simplement ta chaine avec les charactère indésirable.
sinon si tu veux être précis, pour un champ de type date, tu dois mettre CURDATE() et pour un champ time, c'est CURTIME()
EDIT : pour récupérer ta date, utilise ceci
DATE_FORMAT(date,'%d/%m/%y - %H:%i:%s') as date
dans ta requete sql au lieu de simplement mettre "date"
bien sur tu peux formater la date comme tu veux. tu dois juste mettre un "%" devant les lettres représentant une date/heure tu as entre autre (tu en a bcp plus)
y : l'année a 2 chiffres
Y : l'année a 4 chiffres
d : le jour à 2 chiffres (je ne suis plus sur)
m : le moi a 2 chiffres
H : l'heure
i : les minutes
s : les secondes
mais il y a plein d'autre format de date, cherche sur le net :)
voilà :)
et il n'y a rien a faire en php pour ceci :)
Mais moi, je veux changer uniquemement l'heure (H:i:s). Pas la date (il est parfait donc pourquoi le modifier).
Et je veux pas de champ (DATETIME). Je veux un champ (DATE) et un autre champ (TIME).
A propos, j'ai cherche un peux sur la fonction date().
J'ai un truc sur Z (Décalage horaire en secondes) : http://www.phportail.net/articles/33-la-fonction-date.php
6H = 21600 sec
Mais apres, je sais pas comment de parametrer dans 'date("H:i:s" )'...
Je trouve pas de tuto.
Et est-ce que cela pourrai marche avec cette solution ?
Et je veux pas de champ (DATETIME). Je veux un champ (DATE) et un autre champ (TIME).
A propos, j'ai cherche un peux sur la fonction date().
J'ai un truc sur Z (Décalage horaire en secondes) : http://www.phportail.net/articles/33-la-fonction-date.php
6H = 21600 sec
Mais apres, je sais pas comment de parametrer dans 'date("H:i:s" )'...
Je trouve pas de tuto.
Et est-ce que cela pourrai marche avec cette solution ?
okuni
Messages postés
1221
Date d'inscription
jeudi 4 septembre 2008
Statut
Membre
Dernière intervention
2 janvier 2014
126
13 avril 2009 à 15:09
13 avril 2009 à 15:09
Je t'ai trouvé 2 site expliquant ceci.
J'avoue ne jamais avoir travaillé avec les décalage horaire donc je ne pourrai pas t'aider d'avantage.
https://docs.microsoft.com/fr-fr/sql/t-sql/data-types/datetimeoffset-transact-sql?redirectedfrom=MSDN&view=sql-server-ver15
https://docs.postgresql.fr/7.4/datatype-datetime.html
a+
J'avoue ne jamais avoir travaillé avec les décalage horaire donc je ne pourrai pas t'aider d'avantage.
https://docs.microsoft.com/fr-fr/sql/t-sql/data-types/datetimeoffset-transact-sql?redirectedfrom=MSDN&view=sql-server-ver15
https://docs.postgresql.fr/7.4/datatype-datetime.html
a+
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
13 avril 2009 à 21:51
13 avril 2009 à 21:51
Tu peux sinon utiliser la fonction mktime() pour calculer l'heure. Cette fonction est fait pour ça en fait.
Regarde sur cette page: https://php.developpez.com/faq/?page=dates#date-dans-semaine
Regarde sur cette page: https://php.developpez.com/faq/?page=dates#date-dans-semaine