Autor Zpráva
zetor22
Profil
Zdravím,
mám následující SQL dotaz

$dotaz_query = $db->query("SELECT * , DATE_FORMAT(`datum` , '%e%c%Y') AS `datum_zobrazit` FROM `tabulka` WHERE ..... ;");
$dotaz_result = $dotaz_query ->fetch_array()

a potom vypsání datumu
$datum_vypsat = $dotaz_result['datum_zobrazit'];

místo datumu se mi ale vypíše toto: 攀c
nevíte čím by to mohlo být?
bestik_63
Profil
a když dáš
$dotaz_query = $db->query("SELECT * , `datum` AS `datum_zobrazit` FROM `tabulka` WHERE ..... ;"); 
tak to vypisuje co?
zetor22
Profil
vypíše se z DB datum tak, jak je zapsán.. 2013-10-27 00:00:00
bestik_63
Profil
ahoj, tak jsem to zkoušel u sebe a funguje to jak má.
viz.
CREATE TABLE IF NOT EXISTS `pokus` (
  `datum1` varchar(20) NOT NULL,
  `datum2` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `pokus` (`datum1`, `datum2`) VALUES
('2016-12-03 11:31:46', '2015-11-02 09:30:45');

SELECT *,DATE_FORMAT(`datum1` , '%e%c%Y'),DATE_FORMAT(`datum2` , '%e%c%Y') FROM `pokus`

bohužel s mými zkušenostmi ti už asi neporadím :-( Vypadá to jako problém s kódováním. Ale to jen vypadá. To by ti to nevypsalo bez formátování normálně.
PostCC
Profil
Pokud si za:

$dotaz_result = $dotaz_query ->fetch_array();

doplníte:

Print_R($dotaz_result);

vidíte asociativní pole? Netuším, co vrací "fetch_array()", ale očekával bych spíše pole s numerickými indexy. Položka:

$dotaz_result['datum_zobrazit']

tak nejspíš vůbec neexistuje.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: