Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> SQL - Konwersja daty
noiragneau
post 8.04.2009, 11:00:45
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 11.09.2008

Ostrzeżenie: (0%)
-----


  1. <?php
  2. class TerminyService
  3. {
  4.    function TerminyService()
  5.    {
  6.        include("TerminyService.methodTable.php");
  7.        mysql_connect('localhost', 'root', '');
  8.        mysql_select_db('amfphp');
  9. }
  10.  
  11.    function pokazTerminy($dataMiesiac, $dataRok)
  12.  
  13.    {
  14.  
  15.        $sql = sprintf( "SELECT id AS data, CONCAT('Od: ', dataStart, ' Do: ', dataKoniec, ' (', opis, ')') AS label FROM terminy WHERE month(dataStart) >= %d AND year(dataStart) >= %d ORDER BY month(dataStart), day(dataStart)",
  16.                    $dataMiesiac,
  17.                    $dataRok);
  18.        $query = mysql_query($sql);
  19.        NetDebug::trace($sql);
  20.        NetDebug::trace(mysql_error());
  21.        return $query;
  22.  
  23.    }
  24. }
  25. ?>


Witam.

Po wykonaniu zapytania SQL zamieszczonego powyżej dostaje wynik:
Od: 2009-02-02 Do: 2009-02-03 (Konferencja biznesowa)
Od: 2009-03-20 Do: 2009-03-21 (Wesele)

itd

Niestety mam mały problem i tu proszę o pomoc:
Jak zmienić kod aby po zapytaniu SQL wyświetliło się:
Od 2 luty(poniedziałek) do 3 luty(wtorek) - Konferencja biznesowa ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
noiragneau
post 9.04.2009, 08:07:54
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 11.09.2008

Ostrzeżenie: (0%)
-----


no rzeczywiście bład był w dekodowaniu.

W phpMyAdmin

  1. "SET lc_time_names = 'pl_PL'; 
  2.   SELECT @@lc_time_names; 
  3.   SELECT id AS data, CONCAT('Od: ', DATE_FORMAT(dataStart, '%d %M'), ' Do: ', 
  4.   DATE_FORMAT(dataKoniec, '%d %M %Y'), ' (', opis, ')') AS label FROM terminy 
  5.   WHERE month(dataStart) >= %d AND year(dataStart) >= %d ORDER BY month(dataStart), day(dataStart)


wyświetliło się poprawnie:
Od: 02 luty Do: 03 luty 2009 (Konferencja biznesowa)




niestety w php już gorzej:/
kod wygląda tak
  1. <?php
  2. class TerminyService
  3. {
  4.  function TerminyService()
  5.  {
  6.      include("TerminyService.methodTable.php");
  7.      mysql_connect('localhost', 'root', '');
  8.      mysql_select_db('amfphp');
  9.  }
  10.  
  11.  function pokazTerminy($dataMiesiac, $dataRok)
  12.  {
  13.      $sql = sprintf("SET lc_time_names = 'pl_PL'; 
  14.      SELECT @@lc_time_names; 
  15.      SELECT id AS data, CONCAT('Od: ', DATE_FORMAT(dataStart, '%d %M'), ' Do: ', 
  16.      DATE_FORMAT(dataKoniec, '%d %M %Y'), ' (', opis, ')') AS label FROM terminy 
  17.      WHERE month(dataStart) >= %d AND year(dataStart) >= %d ORDER BY month(dataStart), day(dataStart)",
  18.                  $dataMiesiac,
  19.                  $dataRok);
  20.      $query = mysql_query($sql);
  21.      NetDebug::trace($sql);
  22.      NetDebug::trace(mysql_error());
  23.      return $query;
  24.  }
  25. }
  26. ?>


Wywala błąd:
(Object)#0
  message = "faultCode:AMFPHP_RUNTIME_ERROR faultString:'sprintf(): Too few arguments' faultDetail:'C:\xampp\htdocs\testZSQL\services\TerminyService.php on line 16'" (powyżej to jest linia 20)

dla php:
$gateway->setCharsetHandler("none", "utf-8", "utf-8");

Ten post edytował noiragneau 9.04.2009, 08:12:25
Go to the top of the page
+Quote Post

Posty w temacie
- noiragneau   SQL - Konwersja daty   8.04.2009, 11:00:45
- - kefirek   Proszę [PHP] pobierz, plaintext <?php$data...   8.04.2009, 12:27:19
- - noiragneau   ale jak to zrobić żeby funkcja brała to sobie z te...   8.04.2009, 17:06:30
- - kilas88   KodCONCAT( 'Od: ', DATE_FORMA...   8.04.2009, 18:05:49
|- - noiragneau   Cytat(kilas88 @ 8.04.2009, 19:05:49 )...   8.04.2009, 18:56:33
- - erix   Cytata ja potrzebuje po polski. http://dev.mysql.c...   8.04.2009, 18:59:29
|- - noiragneau   Cytat(erix @ 8.04.2009, 19:59:29 ) ht...   8.04.2009, 19:13:22
- - erix   Mam nadzieję, że to w ramach jednego połączenia wy...   8.04.2009, 19:15:00
- - noiragneau   http://dev.mysql.com/doc/refman/5.0/en/locale-supp...   8.04.2009, 19:35:32
- - erix   Jaki błąd?   8.04.2009, 20:00:19
- - noiragneau   [SQL] pobierz, plaintext SET lc_time_names = 'pl_P...   8.04.2009, 21:18:38
- - erix   jakie masz kodowanie dla połączenia?jakie kodowani...   8.04.2009, 21:21:33
- - noiragneau   gdzie to sprawdzić?   8.04.2009, 21:37:40
- - erix   http://dev.mysql.com/doc/refman/5.0/en/charset-con...   8.04.2009, 21:46:38
- - noiragneau   PMA: utf8_general_ci i niby mam ustawione kodowan...   8.04.2009, 22:04:00
- - erix   A dla kolumn? [php]setCharsetHandler("iconv...   8.04.2009, 22:21:17
- - noiragneau   no rzeczywiście bład był w dekodowa...   9.04.2009, 08:07:54
- - pyro   Nie można w mysql_query wykonywać kilku zapytań na...   9.04.2009, 09:16:02
|- - noiragneau   Cytat(pyro @ 9.04.2009, 10:16:02 ) Ni...   9.04.2009, 09:45:07
- - erix   Wykonaj kilka mysql_query" title="Zobacz w manualu...   9.04.2009, 10:37:55
- - noiragneau   Cytat(erix @ 9.04.2009, 11:37:55 ) Wy...   10.04.2009, 13:32:47


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2024 - 19:06