Diskuze: české znaky v databázi

PHP PHP české znaky v databázi American English version English version

Avatar
Adam Ježek
Tým ITnetwork
Avatar
Adam Ježek:

Zdravim,
mam jeden problém s databází. Porovnávání mám nastaveno na utf8_czech_ci, v localhost/phpmy­admin když ji otevřu, tak se zde háčka zobrazují v pořádku, ale pokud se ji pokusim použít na webu, tak všechny znaky s háčkama a čárkama sou nahrazený otazníkama. Jak to mam opravit?
A neni to náhodu kvůli tomu, že hodnoty jsem do databáze přidával tak, že jsem v phpmyadmin pustil příkazy typu

INSERT INTO tabulka VALUES (NULL, 1, 0, 'Testovací vzor')

? Pak dočet jsem se, že v tohmle případě se musí dát pozor na didaktritiku, ale to bylo už pozdě.

Odpovědět 11.9.2014 17:49
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
Odpovídá na Adam Ježek
Michal Štěpánek:

a kódování stránek máš UTF8? Nemáš tam Windows-1250 nebo něco takového?

Nahoru Odpovědět  +1 13.9.2014 12:54
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Odpovídá na Michal Štěpánek
Adam Ježek:
<!DOCTYPE html>

<html lang="cs-cz">

  <head>
    <meta charset="utf-8" />
    <link rel="stylesheet" href="styl.css" type="text/css" />

řek bych že mam, to co tam píšu v NetBeans rovnou do kódu stránky a nenačítá se z databáze je v pořádku. A taky mam v databázi další tabulku, kam sem data přidávál z php souboru a ne z phpmyadmin a tam je didaktritika vpoho

Nahoru Odpovědět 13.9.2014 13:56
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
Marek Z.
Redaktor
Avatar
Odpovídá na Adam Ježek
Marek Z.:

A kódování pro připojení máš taky utf8 (set_charset('ut­f8'))?

Nahoru Odpovědět 13.9.2014 14:24
Chybami se člověk učí, běžte se učit jinam!
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Odpovídá na Marek Z.
Adam Ježek:

Ano. Tady bude problém spíše v tom, že jsem data nahnal do databáze v phpmyadmin, data odeslaná z .php souborů sou vpohodě

Nahoru Odpovědět  +1 13.9.2014 14:25
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
Marek Z.
Redaktor
Avatar
Odpovídá na Adam Ježek
Marek Z.:

Hm, v tom bych neviděl problém. Pokud máš porovnání db, připojení k db, soubor a v hlavičce utf-8 tak by to mělo normálně jít.. Hm....

Nahoru Odpovědět 13.9.2014 17:00
Chybami se člověk učí, běžte se učit jinam!
Avatar
Odpovídá na Marek Z.
Michal Štěpánek:

Kdysi jsem měl podobný problém, data vkládaná přímo do DB (ručně) měla ve stránce češtinu zmršenou a data vkládaná přes stránky (php) byla v pohodě...

Nahoru Odpovědět 13.9.2014 17:31
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Marek Z.
Redaktor
Avatar
Odpovídá na Michal Štěpánek
Marek Z.:

A jak jsi to vyřešil? Či pořád ten problém nemá řešení? ;D

Nahoru Odpovědět 13.9.2014 17:52
Chybami se člověk učí, běžte se učit jinam!
Avatar
Odpovídá na Adam Ježek
Vojtěch Mašek (Woyta):

V PHP zavolej po připojení databáze tuhle funkci

mysqli_query($link, "SET NAMES 'UTF8'");
Nahoru Odpovědět 13.9.2014 17:55
Výraz "to nejde" není v mém slovníku
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Odpovídá na Marek Z.
Adam Ježek:

Takže se mi povedlo najít "řešení". Zkusil jsem v phpmyadmin databázi exportovat do souboru. Poté jsem ji smazal a ten soubor znovu importoval. Databáze se znova vytvořila i s hodnotama, a funguje i didaktritika

Nahoru Odpovědět  +1 13.9.2014 17:58
Pokud chceš odpovědět, klikni na odpovědět. Pokud chceš vložit zdroják, klikni na vložit zdroják (</>)
Avatar
Marek Z.
Redaktor
Avatar
Nahoru Odpovědět 13.9.2014 18:06
Chybami se člověk učí, běžte se učit jinam!
Avatar
Odpovídá na Marek Z.
Michal Štěpánek:

Mě ten problém nastal, když jsem ze starší aplikace (PHP4, MySQL4) dělal inovovanou (PHP5, MySQL5)...
Pak jsem si musel udělat funkci, která mi data ze staré DB vytáhla a přes PHP jsem je vložil do nové DB, pak už byla čeština OK...

Nahoru Odpovědět  +1 13.9.2014 19:01
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
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.