Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la base

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la base

    Bonjour,

    Encore un post.
    Voila mon problème, quand je fais un nouvel enregistrement depuis le Front End (C'est un genre d'acticle, donc on selectionne une date avec un calendar), l'enregistrement ce passe à merveille mais la date n'est pas enregistrer.

    Si quelqu'un à un solution pour que la date soit enregistrer je suis prenause!

  • #2
    Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

    Bonjour

    Sans même voir ton code; c'est impossible de te répondre efficacement.

    Vérifie le format de la date; il faut qu'il soit au format MySQL et fais bien attention à le stocker en UTC 00 et non en heure locale.
    Christophe (cavo789)
    Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
    Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

    Commentaire


    • #3
      Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

      Bonjour,

      Voir la classe JDate http://api.joomla.org/cms-2.5/classes/JDate.html, les méthodes toSQL et toMySQL se chargent des conversions de format. Pour les conversions GMT, voir les méthodes offset.
      Pas de demande de support par MP.
      S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

      Commentaire


      • #4
        Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

        Moi code est vraiment basique sur ce coup ci:

        Code PHP:
        public function save()
            {
                
        $data JRequest::getVar('jform', array(), 'post''array');    
            
        $db =& JFactory::getDBO();
                    
        $query  $db->getQuery(true);
                    
        $query->clear();
                    
        $query "INSERT INTO #__interim_demande (id, date, idHotel, idOperation, quantite, idOperation1, quantite1, idOperation2, quantite2, idOperation3, quantite3, idOperation4, quantite4, idOperation5, quantite5, idOperation6, quantite6, idOperation7, quantite7, idOperation8, quantite8, idOperation9, quantite9, idOperation10, quantite10, created_by) VALUES({$id}{$data['date']},{$idHotel} ,{$data['idOperation']} , {$data['quantite']} , {$data['idOperation1']}{$data['quantite1']}{$data['idOperation2']}{$data['quantite2']}{$data['idOperation3']}{$data['quantite3']}{$data['idOperation4']}{$data['quantite4']}{$data['idOperation5']}{$data['quantite5']}{$data['idOperation6']}{$data['quantite6']}{$data['idOperation7']}{$data['quantite7']}{$data['idOperation8']}{$data['quantite8']}{$data['idOperation9']}{$data['quantite9']}{$data['idOperation10']}{$data['quantite10']}{$userId})"
                    
        $db->setQuery((string)$query);
                    
        $db->Query();
            } 

        Commentaire


        • #5
          Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

          Et le $data['date'] a quel format ?
          Certainement pas celui attendu par MySQL.
          Pas de demande de support par MP.
          S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

          Commentaire


          • #6
            Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

            Il me renvoie avec un var_dump($data['date']) => '2014-02-26'

            Commentaire


            • #7
              Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

              fais un dump de la query et testes en direct avec phpMyAdmin...
              Pas de demande de support par MP.
              S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

              Commentaire


              • #8
                Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

                La date ne passe pas

                Commentaire


                • #9
                  Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

                  Donc tu as un loup ou un ours ou un putois dans la requête... A toi de trouver lequel.
                  Que raconte exactement le dump de la query. Il est fort probable que la date ne soit pas "quotée".
                  Pas de demande de support par MP.
                  S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                  Commentaire


                  • #10
                    Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

                    INSERT INTO #__interim_demande VALUES(12, 2014-02-26,1 ,1 , 0 , 2, 0, 3, 0, 4, 3, 5, 0, 6, 0, 7, 0, 8, 0, 9, 0, 10, 0, 11, 0, 807); Elle donne ça et en effet elle est pas quoté, c'est pour ça?

                    Commentaire


                    • #11
                      Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

                      Oui, une date devrait être quotée, puisque pour le serveur SQL c'est une chaîne. Non quotée, elle est évaluée mathématiquement comme = 2014 - 2 - 26 ...
                      Donc:
                      Code PHP:
                      public function save() 
                          { 
                              
                      $data JRequest::getVar('jform', array(), 'post''array'); 
                          
                      $db =& JFactory::getDBO(); 
                                  
                      $query  $db->getQuery(true); 
                                  
                      $query->clear(); 
                                  
                      $query "INSERT INTO #__interim_demande (id, date, idHotel, idOperation, quantite, idOperation1, quantite1, idOperation2, quantite2, idOperation3, quantite3, idOperation4, quantite4, idOperation5, quantite5, idOperation6, quantite6, idOperation7, quantite7, idOperation8, quantite8, idOperation9, quantite9, idOperation10, quantite10, created_by) 
                                 VALUES(
                      {$id}, '{$data['date']}',{$idHotel} ,{$data['idOperation']} , {$data['quantite']} , {$data['idOperation1']}{$data['quantite1']}{$data['idOperation2']}{$data['quantite2']}{$data['idOperation3']}{$data['quantite3']}{$data['idOperation4']}{$data['quantite4']}{$data['idOperation5']}{$data['quantite5']}{$data['idOperation6']}{$data['quantite6']}{$data['idOperation7']}{$data['quantite7']}{$data['idOperation8']}{$data['quantite8']}{$data['idOperation9']}{$data['quantite9']}{$data['idOperation10']}{$data['quantite10']}{$userId})";  
                                  
                      $db->setQuery((string)$query); 
                                  
                      $db->Query(); 
                          } 
                      aurait de grandes chances de mieux fonctionner.
                      Pas de demande de support par MP.
                      S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                      Commentaire


                      • #12
                        Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

                        Tu m'enléve une sacré épine du pied! Merci beaucoup!

                        Commentaire


                        • #13
                          Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

                          J'aurais besoin d'abuser de tes services Jisse!

                          Dans le cas d'un update tu ferais comment pour mettre les '..'.
                          Code PHP:
                          $query->update(' #__interim_hotel ');
                                      
                          $query->set(' SIREN = '.$data['SIREN']);
                                      
                          $query->set(' nom = '.$data['nom'] ); 

                          Commentaire


                          • #14
                            Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

                            Un peu de RTFM http://docs.joomla.org/Inserting,_Up...sing_JDatabase
                            Pas de demande de support par MP.
                            S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                            Commentaire


                            • #15
                              Re : Com. Perso: Enregistrement de date depuis le frontEnd qui ne passe pas dans la b

                              J'ai déjà regarder ça, mais ils ont pas de .$data['nom'] a mettre entre ''.

                              Commentaire

                              Annonce

                              Réduire
                              Aucune annonce pour le moment.

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X