Jump to content
GIGN Forum

[php] Query


RMXjunior
 Share

Recommended Posts

Savienojoties ar mysql aiziet query: "SELECT * FROM table WHERE rel='$rel' ", šajā $rel ir krievu burti. MySQL bāze ir cp1251 kodējumā, PHP scriptā pēc mysql_connect ievietoju:

mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");

Kamēr query nesatur krievu burtus viss ir oK`.. Tiklīdz ir krievu burti - atbilde tukša, laikam pa ceļam nepareizi kodējās un neatrod neko atbilstošu pieprasītajam =\

Jautājums:

Vai šo $rel var kkā apstrādāt lai krievu burtus aizvietot ar kko un mysql pēc tam saprot kas tieši ir vajadzīgs?

Vai kkā citādāk ir jarisina šis te?

Edited by RMXjunior
Link to comment
Share on other sites

Lieto utf-8 kodeejumu!

Link to comment
Share on other sites

Man vajag cp1251 kodejumu! Kam tad mainiju charset!

Pietam tas neko nemaina!!!

EDIT:

Man liekas pašam PHP vai MySQL (drīzāk PHP) nepatīk tie krievu burti.. Jo kad rakstu tos ieks mysql_query - man no bāzes nekas nenāk!

Ja query atbildē ir gan latin gan cp1251, tad atpakaļ no bāzes atnāk tikai latin, bet cp1251 atgrižas kā NULL

Edited by RMXjunior
Link to comment
Share on other sites

Kad lietoju UTF-8 tad atgrieювs visi burti kв jautвjum zоmes..

Visur kur varзju nomainiju to latin1 uz cp1251 .. Viss kas palika NE cp1251 kodзjumв ir MySQL charset: UTF-8 Unicode (utf8)

Piem.:

Velku no bвzes tekstu "SELECT text FROM table", viss ok, bet tiklоdz

mysql_query komandaa ir krievu burti "SELECT text FROM table WHERE kkas='Р?РЈРпїЅРпїЅРпїЅРпїЅР?Р?РЈРпїЅР?Р?'" tad man atnвk NULL

Tie нeburi ir krievu burti :D (scriptв ir normвli burti)

Edited by RMXjunior
Link to comment
Share on other sites

MySQL utf8

MySQL pārraides kodejums utf8

pašas lapas kodejums arii utf8

un saglabats fails arii utf8 kodejuma

bet tad ķeburi burtu vietā, un vienalga query atbilde NULL =\

EDIT:

pamaniju ka tagad uzspiežot uz linku kura href ir krievu burtiem - brauzerā var salasīt, bet cp1251 kodējumā ir apmēram šādi: %ED%F6 .. Vai tas kko nozīmē?

Edited by RMXjunior
Link to comment
Share on other sites

Ok, veidojot kveriju ir gļuki, kam es īpaši nespēju noticēt, jo parasti tas ir vienīgais, kas strādā.

Izvadot no datubāzes iegūtos datus viss ir ok?

header("Content-Type: text/plain; charset=utf-8");
echo $izselektētais_teksts;
echo "<br />";
echo iconv("Windows-1251","UTF-8",$izselektētais_teksts);

Link to comment
Share on other sites

Nepalīdz, jau mēģināju!

Un vispār man liekas ka kodējums te nav pie vainas, jo kad raxtu mysql_query tikai latīņu burtiem viss ir ok, izved krievu burtus kā vajag, a tiklīdz ir krievu burti mysql_query iesniegumā - atpakaļ no cp1251 kodējuma nekas nenāk.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...