medaminech
Messages postés4Date d'inscriptionmardi 14 avril 2009StatutMembreDernière intervention18 mai 2010
-
17 mai 2010 à 12:41
kohntark
Messages postés3705Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention27 avril 2012
-
19 mai 2010 à 08:09
Bonjour toutes et tous,
Voila mon probleme, je travaille sur une application pour gérer les visites extérieures au sein d'une societe. J'ai trouvé un probleme lors de la conversion, j'ai cherché toute la matinée pour une solution mais j'ai pas trouvé ce que je cherchais. Anyway, j'ai besoin d'afficher en premier lieu la date du jour de la visite et après les visites par heure du meme jour et ainsi de suite. J'ai utilisé pour le champ DateHeure le type DateTime (AAAA-MM-JJ HH:MM:SS).
Pour afficher la date du jour, j'ai utilisé : CAST(DateHeure AS CHAR(10)) ce qui marche indépendamment.
Pour le deuxieme celui de choisir la date a partir du datetime, j'ai utilisé :
SUBSTRING(CAST(DateHeure AS CHAR(19)),12,19)
Mais il ne marche pas, ça m'indique des erreurs dans les lignes en gras.
Si Quelqu'un a une idée d'une solution quelconque, partagez-la :) Et merci
Remarques : Il n'y a pas de probleme dans la connexion avec la bases de données puisque d'autres fichiers marchent.
$sql2 = \"SELECT SUBSTRING(CAST(DateHeure AS CHAR(19)),12,19), NomPrenom, Societe, Objet, Service FROM visite WHERE DateHeure LIKE '\".$data->DateHeure.\"%' ORDER BY DateHeure DESC \";
$req2 = mysql_query($sql2) or die('Erreur 2 !');
medaminech
Messages postés4Date d'inscriptionmardi 14 avril 2009StatutMembreDernière intervention18 mai 2010 17 mai 2010 à 12:46
Désolé je les ai pas mis en gras. Voila les lignes :
echo '<table width=100%>',$data->DateHeure,'
';
$sql2 = "SELECT SUBSTRING(CAST(DateHeure AS CHAR(19)),12,19), NomPrenom, Societe, Objet, Service FROM visite WHERE DateHeure LIKE '".$data->DateHeure."%' ORDER BY DateHeure DESC ";
medaminech
Messages postés4Date d'inscriptionmardi 14 avril 2009StatutMembreDernière intervention18 mai 2010 18 mai 2010 à 00:14
Merci pour le passage en tt cas,
j'ai indiqué les erreurs dans mon deuxieme post, j'ai oublié de les indiké au debut.
J'ai fait un substring(cast) parce que j'ai essayé un cast tout seul et j'ai eu une erreur, donc j'ai conclu que puisk c'est une date on ne peut faire la souschaine.
Si tu as une solution qui omet tout ça, n'hesite pas
kohntark
Messages postés3705Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention27 avril 201230 18 mai 2010 à 03:29
j'ai indiqué les erreurs dans mon deuxieme post
Non, tu as indiqué les lignes concernées, pas les messages d'erreurs exacts qui te sont renvoyées. Faire un copié / collé de ces erreurs en précisant clairement la ligne concernée évite de trop chercher, voire de répondre à côté de la plaque.
Concernant :
La fonction SUBSTRING() prend en troisième paramètre la longueur de la chaîne à récupérer à partir de la position donnée par le second paramètre.
En l'occurrence 19 ne correspond plus à rien (il eu fallu mettre 8)
Mais bon, inutile de passer par là : tu as toute une tripotée de fonctions sur les dates pour cela (je te laisse voir la doc), par exemple :
$sql2 = "SELECT DATE_FORMAT(DateHeure, '%H:%i:%s'), ...
Cordialement,
Kohntark -
Vous n’avez pas trouvé la réponse que vous recherchez ?