IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Proc�dural MySQL Discussion :

[Date dans Mysql] Prise en compte des espaces


Sujet :

SQL Proc�dural MySQL

  1. #1
    Membre �clair�
    Inscrit en
    Avril 2005
    Messages
    269
    D�tails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 269
    Par d�faut [Date dans Mysql] Prise en compte des espaces
    Voila j'ai cr�e une petite fonction qui me permet de formater la date :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    function datefr($jj, $mm, $aaaa)
    	{
    	  $userDate = mktime(0,0,0,$mm,$jj,$aaaa);
    	  $jours = array('Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi');
    	  $mois = array('', 'janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre');
    	  return $jours[date("w", $userDate)] . " " . $jj . " " .   $mois[date("n", $userDate)] . " " . $aaaa;
    	}
    et je stocke le resultat dans une variable :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    $jour = datefr(date(d),date(m),date(Y));
    le r�sultat par exemple : Dimanche 01 janvier 2006

    mais quand je veux stocker cette variable dans mysql il ne m'enregistre que le premier mot en l'occurence ici "Dimanche"

  2. #2
    R�dacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 45
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Par d�faut
    Quelle est la requ�te SQL exacte?

    Il doit s�rement y avoir un probl�me de guillements manquants.

    Sinon, pour avoir la date dans la langue recherch�e, tu peux te servir des locales (fonction setlocale du PHP), c'est plus simple...
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pyd�velop

    Derniers articles:

    (SQL Server) Introduction � la gestion des droits
    (UML) Souplesse et modularit� gr�ce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  3. #3
    Membre �clair�
    Inscrit en
    Avril 2005
    Messages
    269
    D�tails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 269
    Par d�faut
    Merci pour le tuyau "setlocale"

    Donc ca donne au complet :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    setlocale (LC_ALL, 'fr_FR');
    $jour = strftime("%A %e %B %Y", mktime(0,0,0,date(m),date(d),date(Y)));
    Sinon pour la requete je passe la variable $jour en parametre avec la methode GET

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    monfichier.php?datebug=$jour
    et la requete :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    $sql = "INSERT INTO Bugs(Poster,DateBug,Libelle,Traite) VALUES('$_GET[poster]','$_GET[datebug]','$_POST[signal]','$_GET[traite]')";
    $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
    Et donc dans la base de donne quand je met le champ en "datetime" il m'affiche "0000-00-00 00:00"
    et si je le met en varchar ou char il ne m'affiche que le jour "lundi"

  4. #4
    R�dacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 45
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Par d�faut
    Un format de datetime correct: "YYYY-MM-DD HH:MM:SS". Si tu passes "lundi 2 janvier 2006", c'est s�r que MySQL aura des difficult�s � te comprendre...

    Il faut bien diff�rencier les infos que tu mets en base (dans un format acceptable pour MySQL), de l'affichage (avec les noms des jours en clair, en fonction des locales utilis�es)

    Sinon, pour avoir la date du jour, il suffit d'utiliser la fonction NOW() de MySQL (c'est dingue le nombre de personnes qui s'emb�tent � utiliser les fonctions mktime et date du PHP alors qu'il suffit d'utiliser le NOW() de MySQL !)
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pyd�velop

    Derniers articles:

    (SQL Server) Introduction � la gestion des droits
    (UML) Souplesse et modularit� gr�ce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  5. #5
    Membre �clair�
    Inscrit en
    Avril 2005
    Messages
    269
    D�tails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 269
    Par d�faut
    La tout marche met la fonction now() ne renvoi rien
    vu que c'est une fonction mysql je ne capte pas comment elle pourrait etre interprete dans mon code php le moteur va rien capt�.
    Je devrais recevoir un truc genre "undefined function ... " ou un truc du genre non ?

    Sinon en fait le gros probleme c'est que ma date s'enregistre au format datetime dans mysql mais quand je recupere la valeur dans mon code php j'ai l'ann�e en premier (le format anglo-saxon lol) et je ne sais pas comment la faire apparaitre en lettre genre "lundi 12 d�cembre 12:42" quand je la r�cupere de la base ou elle se trouve enregistr�e dans ce format : 2005-12-12 12:42

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 13
    Dernier message: 31/03/2010, 16h25
  2. Prise en compte des changements de droits dans un partage Windows
    Par lesouriciergris dans le forum S�curit�
    R�ponses: 1
    Dernier message: 10/11/2009, 09h33
  3. R�ponses: 3
    Dernier message: 08/11/2009, 11h45
  4. prise en compte des accents dans mes variables
    Par paolo2002 dans le forum Servlets/JSP
    R�ponses: 6
    Dernier message: 29/02/2008, 17h17
  5. Pb de prise en compte des accents dans jdk1.5
    Par NizarK dans le forum Langage
    R�ponses: 3
    Dernier message: 23/03/2007, 15h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo