Diskuze: Chybové hláčení s otazníky

PHP PHP Chybové hláčení s otazníky American English version English version

Avatar
Kulíšek
Člen
Avatar
Kulíšek:

Zdravím, při nepovedeném spojení s databází vypisuji

catch (Exception $e)
       {
           die('Odchycená chyba' . $e->getMessage());
       }

Jenže v konečném výsledku mám místo diakritiky otazníky. Všechno ostatní funguje v databázi mám nastaveno UTF-8 czech, v indexu mám mb_internal_en­coding("UTF-8"); zdroják mám také v UTF-8, u PDO mám PDO::MYSQL_AT­TR_INIT_COMMAND => "SET NAMES utf8".
Výpis i ukládání do databáze probíhá v pořádku.
Jak se těch � potvor zbavit?

pardon za ten nadpis, hlavně že si dvacetkrát kontroluji obsah dotazu ale na nadpis si nevzpomenu :/

Editováno 20. června 22:23
 
Odpovědět 20. června 22:21
Avatar
mkub
Redaktor
Avatar
Odpovídá na Kulíšek
mkub:

a mas aj v HTML uvedene utf-8?

 
Nahoru Odpovědět 20. června 22:33
Avatar
Kulíšek
Člen
Avatar
Odpovídá na mkub
Kulíšek:

ano i tam
no ale ted jsi mne nakopl, ta hláška se totiž vypisuje před výpisem html, problém zřejmě nalezen, ale vůbec nevím jak se ho zbavit

Editováno 20. června 22:38
 
Nahoru Odpovědět 20. června 22:36
Avatar
mkub
Redaktor
Avatar
Odpovídá na Kulíšek
mkub:

skus skontrolovat browser, ze ci tam je zvolene napevno ine kodovanie znakov, lebo aj tam to kodovanie moze zablbnut

 
Nahoru Odpovědět 20. června 22:40
Avatar
Kulíšek
Člen
Avatar
Kulíšek:

tam je také utf-8
už nevím co dělat tak jsem zkusila do výpisu nacpat kostru HTML

die('<!DOCTYPE html>
<html lang="cs-cz">
<head>
    <base href="/localhost"/>
    <meta charset="UTF-8"/> </head><body> Odchycená chyba' . $e->getMessage() . '
 příliš žluťoučký kůň úpěl ďábelské kódy. </body></html>');

špatně se vypisuje jen obsah $e->getMessage()

 
Nahoru Odpovědět 20. června 22:57
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na Kulíšek
David Hynek:

začínáš PHP s touto hlavičkou?

header('Content-type: text/html; charset=utf-8');

Mělo by to pomoci...

Nahoru Odpovědět 21. června 0:12
Čím víc vím, tím víc věcí nevím.
Avatar
Kulíšek
Člen
Avatar
Kulíšek:

neměla jsem, ale bohužel ani přidání nepomohlo

 
Nahoru Odpovědět 21. června 0:16
Avatar
David Hynek
Redaktor
Avatar
Odpovídá na Kulíšek
David Hynek:

a není to takhle přijato už z DB? V jakým ji máš kódování?

Nahoru Odpovědět 21. června 10:32
Čím víc vím, tím víc věcí nevím.
Avatar
Kulíšek
Člen
Avatar
Kulíšek:

jak píšu vše mám v utf-8czech - databázi, sloupce i řádky

 
Nahoru Odpovědět 21. června 16:33
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Kulíšek
David Čápka:

Hodilo by se napsat kde se bere obsah vlastnosti $message té výjimky. Pokud je špatně vypsaný jen ten, tak je problém tam, kde výjimku vyhazuješ. Nemůžeme vědět, jestli tam máš jen staticky napsaný text (pak je špatně kódovaný ten soubor) nebo zda tam dáváš třeba hlášku z DB (pak je problém v DB).

Nahoru Odpovědět  +1 21. června 16:52
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Kulíšek
Člen
Avatar
Kulíšek:

Asi hláška z db je to jen obalený vnitřek funkce pripoj z tutoriálu "Jednoduchý redakční systém v PHP objektově (MVC)"
můžu to zkusit na čistém výsledku z toho tutoriálu

 
Nahoru Odpovědět 21. června 17:07
Avatar
katrincsak
Člen
Avatar
Odpovídá na Kulíšek
katrincsak:

Nejčastější chyba bývá v nastavení kódování samotného používaného souboru.

 
Nahoru Odpovědět  +2 29. června 15:17
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 12 zpráv z 12.