Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou
… více »Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.
Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Před 25 lety zaplavil celý svět virus ILOVEYOU. Virus se šířil e-mailem, jenž nesl přílohu s názvem I Love You. Příjemci, zvědavému, kdo se do něj zamiloval, pak program spuštěný otevřením přílohy načetl z adresáře e-mailové adresy a na ně pak „milostný vzkaz“ poslal dál. Škody vznikaly jak zahlcením e-mailových serverů, tak i druhou činností viru, kterou bylo přemazání souborů uložených v napadeném počítači.
Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Tentokrát snad přehledněji.
Podařilo se mi zprovoznit zobrazování dat z MSSQL serveru (Server2003, SQL2005) přes Freetds 0.82 do Apache/2.2.3 a PHP 5.1.6. na Centos5/2.6.18
Nedaří se mi překonat 2 překážky:
1. nesprávné kódování zobrazených dat nastavení:
-MSSQL - UTF-8/Czech_CI_AS
-freetds.conf - tds version=8.0 a client charset=UTF-8
-php.ini - default_charset = "utf-8" a mssql.charset = "utf-8"
-httpd.conf - AddDefaultCharset Off
-*.php - meta ...charset=utf-8
Asi mi něco uniká, ale prezentovaná data jsou stále ve Windows-1250.
2. zobrazení pole poznámky (ntext) příklad:
$vysledek2 = mssql_query("SELECT TOP 20 ID,SkupZbo,RegCis,Poznamka .....");
while ($zaznam2 = mssql_fetch_array($vysledek2) ): ...
Dotaz funguje jen pokud tam není pole Poznamka, které je typu ntext. Jinak vznikne problém s kódováním nebo collation. Předpokládám, že bude nutná nějaká konverze, jen nevím jak se obdobné řeší.
Můžete někdo poradit, jak oba problémy překonat nebo nasměrovat na obdobné řešení. Předem dík.
mssql.charset="UTF-8"
, případně v php kódu ini_set("mssql.charset", "UTF-8");
.UTF-8
velkými písmeny…)
/* nastavit tyto volby nebo je nastavit v php.ini ------------------- */ ini_set( 'mssql.charset', 'UTF-8' ); //charset /* Pokude nebude následující nastaveno, tak texty se normálně oříznou, bez nějaké chyby či varování. Jestli se nepletu, tak nenastaveno (či '-1'), znamená jen 4KiB. */ ini_set( 'mssql.textlimit', '65536' ); ini_set( 'mssql.textsize', '65536' ); /* ¿Konverze datumů? */ //ini_set( 'mssql.datetimeconvert', '1 nebo 0' ); /* ------------------------------------------------------------------ */ $con = mssql_connect(....); @mssql_query("SET TEXTSIZE 65536", $con); //nastavit před selectem, postačuje 1× za sezení - možná nebude nutné //asi je to ekvivalentem 'mssql.textsize' - nepamatuji si :( //Pravděpodobně bude nutné u SQL dotazu přetypovat NTEXT a NVARCHAR např.: $rs = mssql_query('SELECT TOP 20 ID,SkupZbo,RegCis,CAST(Poznamka AS TEXT)…');
Nápady jsem vyzkoušel, ale úspěch byl jen částečný:
ad.1. kódování$rs = mssql_query('SELECT TOP 20 ID,SkupZbo,RegCis,CAST(Poznamka AS TEXT) AS Poznamka …');
Přesto dík za pomoc, budu hledat dál.
Ještě doplním poslední zjištění k chybě kódování:
'AS'
- to jsem už nedopisoval, to jsem nechal na Vás…, důležité je to CAST-ováníini_set( 'mssql.charset', 'UTF-8' );// nebo/a v php.ini ini_set( 'mssql.textlimit', '65536' );// nebo/a v php.ini ini_set( 'mssql.textsize', '65536' );// nebo/a v php.ini $con = mssql_connect(....); @mssql_query("SET TEXTSIZE 65536", $con); $rs = mssql_query('SELECT TOP 20 ID,SkupZbo,RegCis,Poznamka…');//bez CAST?
Takže úpravy nastavení ini_... nemají žádný vliv, v php.ini už to je zapsáno od minule.
S tou poznámkou mi to jinak než s CAST nefunguje.
Ohledně skutečného kódování stránky si samozřejmě jistý na 100% nejsem, ale v rámci svých možností jsem jinou možnost nezjistil. Stránka není nikde vystavená, je to jen na intranetu, přes wget neumím stránku sestavit tak, aby obsahovala i data z db.
Připojuji něco ze stránky, kterou jsem uložil ve Voknech z FF a ručně pročistil, je tam jen ta část, kolem dat z databáze- ty jsou v té tabulce.
Jelikož se jedná pouze o dvě pole, ve kterých jsou problematická data, tak jdu hledat něco pro překódování jen konkrétních polí před zobrazením, třeba to bude stačit.
K tomu kódování mě ještě napadá možnost, že jsem nějak nesprávně zkompiloval php s freetds, jen teď nevím, jak to oveřit.
Opět dík za trpělivost a rady.
Kódování jsem nakonec vyřešil překódováním až v php
echo "...".$zaznam2["RegCis"]."...";
echo "...".iconv('CP1250', 'UTF-8', $zaznam2['Nazev1'])."...";
echo "...".iconv('CP1250', 'UTF-8', $zaznam2['Poznamka'])."...";
Určitě to není ideální řešení, ale momentálně to splňuje účel, takže to zatím dál zkoumat nebudu.
Tiskni
Sdílej: