Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & SQL-Server
PHP & SQL-Server Forum d'entraide sur SQL-Server avec PHP. Avant de poster -> FAQ SQL-Server
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/12/2010, 17h01   #1
Invité de passage
 
Inscription : décembre 2010
Messages : 19
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 19
Points : 3
Points : 3
Par défaut Modification de l'heure dans une base de donnée

Bonjour,
je profite de mon passage ici pour reposer une petite question, encore une fois, j'ai eu beau chercher pas mal sur le net et les forums, je ne suis pas arriver à résoudre mon pb:

Je cherche simplement sous sqlserver2005 à rajouter X minutes à une heure .
X est une variable qui vaut $duree
Mon heure est donnée directement par le serveur:
Quand j'entre une nouvelle entrée dans ma table le champ "date_time" se remplie automatiquement VIA SQL SERVER avec la fonction " DEFAULT (getdate())" ; ca se passe en interne, il n'y a aucun code php pour cela.

Ensuite je récupère cette information (sous la forme "16/11/2010 16:39:33") et je souhaiterai la modifier afin de l'entrer dans une nouvelle table.



Je vous met mon code, pour l'instant je partais la dessus, mais je pense qu'il faudrait le revoir en profondeur :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
 
		$back= NULL;
 
		$query_time = "	SELECT date_time FROM Unmanage_Table WHERE (server_id = '$server')";
 
		if(isset($query)){
			try {
				$back = $bdd->query($query_time);
			} catch(PDOException $pdoE) {
				echo '<br>ERREUR PDO:<br>'.$pdoE -> getMessage();
			} catch(Exception $e) {
				echo '<br>AUTRE ERREUR:<br>'.$e -> getMessage();
			}
		}else{};
 
 
		if(isset($query)){
			try {
				$back2black = $bdd->SELECT DATEADD(MINUTE,10,$back);
			} catch(PDOException $pdoE) {
				echo '<br>ERREUR PDO:<br>'.$pdoE -> getMessage();
			} catch(Exception $e) {
				echo '<br>AUTRE ERREUR:<br>'.$e -> getMessage();
			}
		}else{};
 
		echo $back2black;
Voila ensuite je l'insère dans une autre base de donnée.

La forme de la date est insérée automatiquement tel quelle dans le tableau. En revanche, quand je fais un

echo '<td>'.$donnees['date_time'].'</td>'.PHP_EOL;

La il me sort (dans mon site web) : Dec 13 2010 2:51PM

Donc déjà je ne sais pas trop sur laquelel me baser, mais je suppose qu'il faut plutot essayer de toucher le forme de date_time telle qu'elle est affichée dans sqlserver 2005.

Merci de m'indiquer la requête afin d'effecture cette modif
dekker est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2010, 17h08   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Il faut utiliser CONVERT() pour définir le format de sortie que tu souhaites :
Code :
SELECT CONVERT(NVARCHAR(19), ton_champ_date, 120) FROM table
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2010, 17h11   #3
Invité de passage
 
Inscription : décembre 2010
Messages : 19
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 19
Points : 3
Points : 3
Entendu, mais je ne souhaite pas forcément changer le format, il me convient, je cherche juste à ajouter des minutes ...
dekker est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2010, 17h16   #4
Membre chevronné
 
Inscription : juillet 2003
Messages : 625
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 625
Points : 600
Points : 600
Bonjour,

Code :
1
2
 
SELECT DATEADD(minute,1,getDATE());
http://msdn.microsoft.com/fr-fr/library/ms186819.aspx
__________________
Le savoir est utile que s'il est partagé par tous.
/(bb|[^b]{2})/
!sleep() ? array((string))
syl2095 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h25.


 
 
 
 
Partenaires

Hébergement Web