abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 1
    včera 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

    Ladislav Hagara | Komentářů: 0
    včera 17:55 | Nová verze

    AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | IT novinky

    Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Zajímavý článek

    Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.

    Ladislav Hagara | Komentářů: 0
    včera 04:00 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.10.38 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 5
    včera 00:22 | Komunita

    Google zveřejnil seznam 1220 projektů od 195 organizací (Debian, GNU, openSUSE, Linux Foundation, Haiku, Python, …) přijatých do letošního, již dvacátého, Google Summer of Code.

    Ladislav Hagara | Komentářů: 2
    5.5. 22:22 | IT novinky

    Na základě DMCA požadavku bylo na konci dubna z GitHubu odstraněno 8535 repozitářů se zdrojovými kódy open source emulátoru přenosné herní konzole Nintendo Switch yuzu.

    Ladislav Hagara | Komentářů: 7
    5.5. 00:33 | Nová verze

    Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.1.0. Po devíti letech od vydání předchozí verze 3.0.5. Doména dillo.org již nepatří vývojářům Dilla.

    Ladislav Hagara | Komentářů: 0
    4.5. 15:00 | Komunita

    O víkendu probíhá v Bostonu, a také virtuálně, konference LibrePlanet 2024 organizovaná nadací Free Software Foundation (FSF).

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (8%)
     (15%)
     (14%)
    Celkem 119 hlasů
     Komentářů: 8, poslední 4.5. 08:25
    Rozcestník

    Dotaz: Záhada při zápisu z mysql do xml

    29.4.2013 00:57 bajt | skóre: 1
    Záhada při zápisu z mysql do xml
    Přečteno: 267×
    Příloha:
    Při exportu popisu zboží z mysql tabulky chci do xml zapsat pouze prvních 100 znaků, což funguje skvěle, avšak pokud zrovna ten 300stý znak je nějaká čeština (ý,ú,ů,ž,š...) tak se mi do xml vždy zapíše místo něj "záhadný znak" viz.příloha.

    Pro oříznutí popisu používám tuto php fci: (substr(str_ireplace($line[popis], 0, 100))

    Výsledkem by mělo být toto, avšak pokud na konci narazí na češtinu (viz.zde na "í") pak je problém. Správně by mělo být: "BEZZÁTĚŽOVÝ DIGITÁLNÍ TESTER BATERIÍ PRO 12V 2-200AH (od typů BT001, BT301 a BT501 se liší"

    Nemáte někdo tušení proč a jak se toho zbavit??

    Řešení dotazu:


    Odpovědi

    Řešení 1× (DarkKnightCZ)
    29.4.2013 01:44 Sten
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    substr neořezává znaky, ale bajty. A ten text je zřejmě v UTF-8, kde jeden znak může mít až šest bajtů. Pro práci se znaky je mb_substr.
    29.4.2013 11:49 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Příloha:
    ano, text je v UTF-8

    Vyzkousel jsem jak jste radili mb_substr a to nasledovne ve dvou verzich: (je tam jeste navic i str_ireplace)

    - mb_substr((str_ireplace($replace, "\r\n", $line[popis])), 0, 100) - (substr(mb_substr((str_ireplace($replace, "\r\n", $line[popis])), 0, 100), 0, 100))

    Ale stejne se to tam poradne vyskytuje - viz.priloha....nemate pls jeste nejaky dalsi napad?
    29.4.2013 12:03 chrono
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Čo vypíše volanie funkcie mb_internal_encoding() ? (pretože je pravdepodobné, že mbstring knižnica nevie, že je to v utf-8 kódovaní)
    29.4.2013 12:08 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    vypise toto: ISO-8859-1 Toz co ted s tim pls?
    29.4.2013 12:28 chrono
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Buď sa pri každej mb_ funkcii použije aj parameter s kódovaním, alebo sa nastaví kódovanie pre všetky mb_ funkcie pomocou mb_internal_encoding("UTF-8");
    29.4.2013 12:31 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Dobre a pokud bych chtel pouzit parametr s kodovanim v danem skriptu jen pro tuto fci "mb_substr" tak jak to mam pls spravne do skriptu zapsat?
    29.4.2013 13:05 Kit
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Přestaň si s tím hrát v PHP a udělej to pořádně v SQL.
    29.4.2013 13:11 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Diky za salamounskou odpoved, ale jak teda to udelat v SQL? :-)
    29.4.2013 13:31 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    jeste neco: mysql databaze je jiz nasazena a pouzivana roky a tudiz vsechny k ni naprogramovane aplikace jsou k ni prizpusobeny, ja ted jen chci delat kazdodenni vystupy z jedne tabulky do xml a z toho duvodu nejake zmeny v SQL by nebyly kvuli toho idealni pac kdo vi jake mozne problemy by to mohlo prinest a tudiz to chci primarne osetrit pouze v php, predem diky za jakekoliv konstruktivni reseni!
    29.4.2013 13:43 Kit
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Však jsem to už psal o kousek níž. Takže polopatě:
    SELECT SUBSTR(popisek, 1, 100) AS popis FROM tabulka WHERE id = ?;
    29.4.2013 14:01 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Nebo LEFT() mi přijde takové elegantnější :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    29.4.2013 14:11 Kit
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Jistě, MySQL je takovými a podobnými funkcemi vybaveno o něco lépe než PHP. I datum je obvykle lepší posouvat a formátovat přímo v databázi. Dá se tak vyhnout problémům, které vloni postihly státní registry.
    29.4.2013 13:44 chrono
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    mb_substr((str_ireplace($replace, "\r\n", $line[popis])), 0, 100, "UTF-8"); (predpokladám ale, že premenná $replace obsahuje len ascii znaky)
    29.4.2013 14:41 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    diky! vyzkousim obsahuje toto: $replace = array("<br />","<br/>","<br>","
    ","
    ","
    ");
    29.4.2013 14:44 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Příloha:
    ajeje formatovani - viz.radeji prilozeny obrazek :-)
    29.4.2013 15:54 Kit
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    A tohle děláš proč? Ty dáváš do databáze HTML?
    29.4.2013 16:22 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    nedavam, ale kdysi drive se tam pres puvodni uzivatele aplikace dostalo (pouze v popisech zbozi)
    29.4.2013 16:09 chrono
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    V takomto prípade nevadí, keď sa na nahradenie použije str_ireplace.
    29.4.2013 10:00 Kit
    Rozbalit Rozbalit vše Re: Záhada při zápisu z mysql do xml
    Ještě to jde oříznout přímo v SQL dotazu funkcí SUBSTR(string, odkud, kolik). S UTF-8 pracovat umí.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.