[ Príspevkov: 28 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
NapísalOffline : 30.12.2010 17:27 | Problém s diakritikou

Ahojte. Mám jeden problém ktorému nemôžem prísť na koreň. Problém je v tom že táto otázka je širokospektrálna. Mám chat v ktorom odosielam správu cez ajax ktorý pošle požiadavku php ktorí ju odošle do sql a zároveň vypíše všetky správy "pošli ich ajaxu" ten ich príjime a vypíše na stránke. Všetko by fungovalo až na to, že sa nezachová diakritika.
Živá ukážka: http://www.blazej44800.php5.sk
Meno: aké chcete
Heslo: pcforum

Otázka znie: kde všade treba nastavovať chrsety abo som tento problém vyrisiešil? pri všetkých scriptoch ich mám v mete tak isto

Ďakujem za každý nápad.
P.S. ten chat je vovývoji


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Užívateľ
Užívateľ
Problém s diakritikou

Registrovaný: 03.04.08
Prihlásený: 10.12.19
Príspevky: 4667
Témy: 37 | 37
Bydlisko: Trnava
NapísalOffline : 30.12.2010 17:29 | Problém s diakritikou

este uloz aj subory v spravnom kodovani + databaza


_________________
Hmmm .... Hrošíček ... [Homer]
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 17:33 | Problém s diakritikou

Všade na začiatku súboru mám:
Kód:
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=windows-1250">


V každom PHP mám:
Kód:
header('Content-Type: text/html; charset=windows-1250');


Každý script sa začína:
Kód:
<SCRIPT charset="widnows-1250">



Ešte neviem kde čo môže byť


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 30.12.2010 17:33 | Problém s diakritikou

no a databaza ti pracuje v akej kodovej stranke ?


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 17:34 | Problém s diakritikou

Súbor na spojenie s db vyzerá takto:
Kód:
<?php
$link = mysql_pconnect ("localhost" , "root", "heslo") or die ("Nepodarilo sa spojiť zo serverom");
$db = mysql_select_db("chat", $link) or die ("Spojenie z databázov nefunguje");
// nastavenie znakovej sady
@mysql_query ("SET NAMES CP1250");
?>


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Čestný člen
Čestný člen
Problém s diakritikou

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34 | 34
Bydlisko: Brno
NapísalOffline : 30.12.2010 17:37 | Problém s diakritikou

Toto sprav:
don jebot píše:
este uloz aj subory v spravnom kodovani + databaza


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 17:39 | Problém s diakritikou

Toto všetko mám. Každú bunku mám nastavenú na cp1250_general_ci. I celú databázu. A ten súbor to ako myslíte? Tu META hlavičku či niečo iné?


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Užívateľ
Užívateľ
Problém s diakritikou

Registrovaný: 03.04.08
Prihlásený: 10.12.19
Príspevky: 4667
Témy: 37 | 37
Bydlisko: Trnava
NapísalOffline : 30.12.2010 17:47 | Problém s diakritikou

priamo v textovom editore si pozri kodovanie suboru pravdepodobne ho mas na UTF nastaveny.


_________________
Hmmm .... Hrošíček ... [Homer]
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 30.12.2010 17:48 | Problém s diakritikou

blazej44800 ako vyzeraju data v databaze ? su spravne ?


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 17:56 | Problém s diakritikou

coldak píše:
blazej44800 ako vyzeraju data v databaze ? su spravne ?
data sú taktiež v chybnej diakritike. Zistil som, že problém je v ajaxe. Ako mu mám nastaviť charset?


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 30.12.2010 18:01 | Problém s diakritikou

nenastavis, pokial detekuje non ascii znaky tak pouzije escapeovanie ale interne pracuje iba s utf8, takze bud si to nejak osetris na strane php alebo vsetko prerobis na utf8


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 18:03 | Problém s diakritikou

Inak by to nešlo? Prerábka na UTF-8 by bola asi veľmi rozsiahla.


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 30.12.2010 18:06 | Problém s diakritikou

no ved ti hovorim ze si to mozes skusit konvertovat na strane php


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 18:11 | Problém s diakritikou

No skúsil som to ale teraz sa mi zobrazuje i meno a čas blbo.

P.S. všetko to skúšam na HDD. Na tej stránke sa to nemení


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 30.12.2010 18:38 | Problém s diakritikou

no ale ved nekonvertuj meno a cas, ale iba text spravy


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 18:45 | Problém s diakritikou

A aky prikaz mam pouzit?


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Čestný člen
Čestný člen
Problém s diakritikou

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34 | 34
Bydlisko: Brno
NapísalOffline : 30.12.2010 18:48 | Problém s diakritikou

/ajax_function.php?akcia=chat vypluva text v UTF-8, tam je problem. Skontroluj si, ci je tento subor ulozeny vo Windows-1250, to sa robi v textovom editore (niektore editory to maju v menu Format, nenapisal si, aky pouzivas). Okrem toho si otvor phpMyAdmina, prezri strukturu tabulky s datami a pozri sa, ci naozaj je v kodovani cp1250.
Mimochodom atribut charset elementu <script> je zbytocny.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 18:51 | Problém s diakritikou

Súbor ajax_function.php má na začiatku header('Content-Type: text/html; charset=windows-1250');
Ale ono to preto vypise vsetko v utf-8 preto lebo i v DB. Pritom do DB zapisuje ten subor ajax_function. a on kodovanie ma. Problem je, že prichadzaju do ajax_function zle data z ajaxu


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 30.12.2010 19:02 | Problém s diakritikou

mozes sem dat zdrojak ajax_function.php ?


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 19:03 | Problém s diakritikou

Kód:
<? //kontrola
session_start();
header('Content-Type: text/html; charset=windows-1250');
include "db.php"; $sid = session_id(); $ip = $_SERVER["REMOTE_ADDR"];

$result_user = mysql_query("SELECT * FROM user WHERE id=\"".$_SESSION["id"]."\"", $link) or die ("Chyba!");
$user = mysql_fetch_array($result_user);

$result_room = mysql_query("SELECT * FROM room WHERE id=\"".$_SESSION["miestnost"]."\"", $link) or die ("Chyba!");
$room = mysql_fetch_array($result_room);

if ($_SESSION["id"] == $user["id"] and $_SESSION["sid"] == $sid and $_SESSION["ip"] == $ip and $_SESSION["miestnost"] == $user["miestnost"])
{


if ($_REQUEST["akcia"] == "history") {mysql_query("UPDATE $room[tabulka] SET view=\"0\" WHERE view=\"1\"", $link);}
if ($_REQUEST["akcia"] == "odoslat" and $_REQUEST["text"] != "") {

  $cas = time();
  $ip = $_SERVER["REMOTE_ADDR"];
  $od = $user["meno"];
  $text = $_REQUEST["text"];
  $text = nl2br($text);

  $oprava = "INSERT INTO $room[tabulka] (od,ip,cas,text,view)VALUES ('$od','$ip','$cas','$text','1')";
  $dooprava = mysql_query($oprava, $link) or die ("Chyba!");

  $casformat = date("d.m.Y H:i:s", $cas);
  $idmessage = mysql_insert_id();

}
if ($_REQUEST["akcia"] == "chat") {
    $last_id = $_REQUEST["last_id"];
    $dotaz = mysql_query("SELECT * FROM $room[tabulka] WHERE view = \"1\" ORDER BY id desc", $link);
    while ($vytah = mysql_fetch_array($dotaz)):
     $vysledok = $vysledok.'<DIV class=glass-item id='.$vytah["id"].'><TABLE><TR><TD width=140><B>'.$vytah["od"].'</B><BR>'.date("d.m.Y H:i:s", $vytah["cas"]).'</TD><TD>'.$vytah["text"].'</TD></TR></TABLE></DIV>';
    endwhile;
    echo $vysledok;

}

if ($_REQUEST["akcia"] == "user")
{
 $i = 0;
 $vytiahnutie = mysql_query("SELECT * FROM `user` WHERE miestnost=\"".$_SESSION["miestnost"]."\"", $link);
 while ($vytah = mysql_fetch_array($vytiahnutie)):
   $vysledok = $vysledok.'<DIV class=user><LI>'.$vytah["meno"].'</LI></DIV>';
   $i++;
 endwhile;
  $vysledok = "<UL>".$vysledok."</UL>";
  echo "{ \"vysledok\": \"$vysledok\", \"ludi\": \"$i\" }";
}

if ($_REQUEST["akcia"] == "aktivita")
{
$time = time();
$oprava = "UPDATE user SET aktivita=\"".$time."\" WHERE id=\"".$user["id"]."\"";
mysql_query($oprava, $link) or die ("Chyba!");
}



}
else {echo "Session ERROR - hodnoty sa nezhodujú!!!";}
?>


Dúfam že tu nie sú žiadne dôveryhodné data


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Čestný člen
Čestný člen
Problém s diakritikou

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34 | 34
Bydlisko: Brno
NapísalOffline : 30.12.2010 19:17 | Problém s diakritikou

Dobre, este raz ti to zhrniem, napisem posledny svoj prispevok do tejto temy. Mna nebavi dookola omielat to iste, ked polovicu kazdeho prispevku odignorujes.
  • Je velka chyba mat v aplikacii dve rozne kodovania. Prerob system tak, aby bolo vsade jedno a to iste kodovanie, najlepsie UTF-8, ale pokial ti vyhovuje Windows-1250, moze byt. Vsade, to znamena nasledovne:
  • Kazdy jeden subor musi byt ulozeny v tvojom kodovani. Co to znamena a ako sa to robi, si bud vygoogli, alebo pohladaj v svojom editore, alebo sa opytaj. Stale si ale nenapisal, v com pises kody. Taky Notepad++ alebo PSPad ma volbu kodovania v menu Format. Opakujem, kazdy jeden subor.
  • To iste kodovanie uvedies v <meta>, alebo v Content-type HTTP hlavicke pomocou fcie header().
  • V takom istom kodovani sa musia ukladat data do databazy. Otvor si strukturu tabulky v phpMyAdmine a nastav to spravne - daj pozor, ze rozlicne kodovania sa daju nastavit pre celu databazu, jednu tabulku, ale aj jeden stlpec v tabulke. Bude sa hodit, ked zmazes zaznamy, ktore boli v tabulke predtym (TRUNCATE TABLE tabulka).
  • Prva query samozrejme SET NAMES tvojekodovanie.
  • Zbav sa akychkolvek zbytocnosti ako PHP fcii na konverziu kodovani alebo atributov charset v <script>e.
Snad som nezabudol na nic. Komunikacia Ajaxom respektuje kodovanie HTML suboru, takze v tomto problem byt nemoze. Malo by ti vsetko fungovat, ak nebudes ohrnat nosom, ze to a to by bolo rozsiahle, tak to neurobim, a ak nebudes preskakovat niektore body z dovodu, ze nevies, ako sa to robi. Drzim palce.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 19:23 | Problém s diakritikou

OK. Inak robím v Golden HTML Editore 4.8.3. Český freeware WYSIWYG editor. V ňom MÁM nastavené CP1250


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 30.12.2010 19:37 | Problém s diakritikou

Kód:
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=iso8859-2">
</head>
<body>
<script>alert(escape('ľščťžýáíé'));</script>
</body>
</html>

ulozene na disk ako iso8859-2 a po spusteni mi alert zobrazi:
%u013E%u0161%u010D%u0165%u017E%FD%E1%ED%E9
tupy JS netusi ze ascii kod podla iso8859-2 znaku ľ je %BE a nie %u013E


Offline

Čestný člen
Čestný člen
Problém s diakritikou

Registrovaný: 11.08.07
Príspevky: 4088
Témy: 34 | 34
Bydlisko: Brno
NapísalOffline : 30.12.2010 19:46 | Problém s diakritikou

coldak, nie Javascript je tupy. "The escape function returns the hexadecimal encoding of an argument in the ISO Latin character set." - koduje sa to nezavisle od kodovania. Ak chces ziskat kod znaku zo stringu, pouzi metodu String.charCodeAt(). Navyse iso8859-2 nie je platny zapis kodovania a nemusi fungovat v niektorych prehliadacoch, spravny zapis je iso-8859-2.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 30.12.2010 19:51 | Problém s diakritikou

ja nechcem ziskat ascii kod znaku ale poukazat ze JS nie vzdy akceptuje kodovanie stranky . ajax pri odosielani dat tiez vykonava escapeovanie a tudiz windows1250 prevadza na unicode escape sequencie ktore si php nespravne konvertuje a do db zapisuje bludy


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 20:32 | Problém s diakritikou

Čiže aké je riešenie? Mám taký pocit, že už aj vy máte v tom chaos.


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 30.12.2010 21:32 | Problém s diakritikou

v ajaxe pouzivas get alebo post ?


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 23.12.10
Prihlásený: 06.10.15
Príspevky: 331
Témy: 130 | 130
Bydlisko: 054 01 Levoča
Napísal autor témyOffline : 30.12.2010 22:50 | Problém s diakritikou

Na odoslanie spravy do DB post

// pridané po 1 hodine 3 minútach od posledného príspevku

Problém vyrišený. Problém bol tam, že do php scriptu prichádzal text v kódovaní utf-8. Ten text stačilo preformátovať do windows-1250 a bolo to
Kód:
$text = iconv("UTF-8","CP1250", $text);


Coldak: ďakujem


_________________
ASUS EeePc 1002HA 1GB RAM 120GB HDD Intel Atom N270 1,60GHz
 [ Príspevkov: 28 ] 


Problém s diakritikou



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

problem s diakritikou

v Redakčné systémy

4

872

06.06.2007 13:31

Flety

V tomto fóre nie sú ďalšie neprečítané témy.

Problém s diakritikou

v Ovládače

10

1582

28.01.2008 15:47

I-pop

V tomto fóre nie sú ďalšie neprečítané témy.

Problem s diakritikou

v Operačné systémy Microsoft

5

1308

04.11.2007 9:56

Nexus

V tomto fóre nie sú ďalšie neprečítané témy.

problem s diakritikou

v Operačné systémy Microsoft

0

320

02.09.2010 10:40

funkye

V tomto fóre nie sú ďalšie neprečítané témy.

Problem s diakritikou [w7]

v Operačné systémy Microsoft

0

388

19.12.2009 18:32

h3r0

V tomto fóre nie sú ďalšie neprečítané témy.

problem s diakritikou utf8

v Databázy

18

2446

23.08.2008 16:36

chrono

V tomto fóre nie sú ďalšie neprečítané témy.

dalsi problem s diakritikou...

v Databázy

19

2696

09.05.2008 19:34

capricorn7

V tomto fóre nie sú ďalšie neprečítané témy.

Problém s diakritikou u RSS

v PHP, ASP

10

666

28.08.2008 22:08

soldi3r

V tomto fóre nie sú ďalšie neprečítané témy.

Hosting a problem s diakritikou?

v Webhosting a servery

0

729

07.06.2010 19:14

NikonD5000

V tomto fóre nie sú ďalšie neprečítané témy.

trieda phpexcel -> problém s diakritikou

v PHP, ASP

1

287

11.02.2014 9:36

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

Spyware Doctor a problem s diakritikou

v Antivíry a antispywary

1

451

04.04.2008 15:36

petos

V tomto fóre nie sú ďalšie neprečítané témy.

Problem s diakritikou a pismenom ň

v Redakčné systémy

12

1097

13.04.2007 15:53

JanoF

V tomto fóre nie sú ďalšie neprečítané témy.

Problem s diakritikou. a tiez ako zrusit scroll na stranke.

v HTML, XHTML, XML, CSS

7

1489

05.08.2007 22:52

kajbo

V tomto fóre nie sú ďalšie neprečítané témy.

znak s diakritikou

v PHP, ASP

2

494

07.07.2009 10:34

pogo

V tomto fóre nie sú ďalšie neprečítané témy.

problémi s diakritikou

v Redakčné systémy

19

1453

06.12.2006 22:50

AVAST

V tomto fóre nie sú ďalšie neprečítané témy.

htmlspecialchars maze znaky s diakritikou

v PHP, ASP

4

365

12.10.2012 13:36

kurtulik1



© 2005 - 2024 PCforum, edited by JanoF