Kracker Posted January 7, 2012 Report Share Posted January 7, 2012 Sveiki! Griežos pie Jums ar problēmu tādu, ka tiklīdz ievieto MySQL datubāzē ierakstu ar garumzīmēm iekš datubāzes tabulas rādās kautkādi ķeburi, tabulas ieraksta piemērs: " UzsÄkot darbÄ«bu jau sniedz iespÄ“ju ". Netieku skaidrībā, kas varētu būt .php faila kodējums - utf-8 without BOM, iekš tabulas lauku COLLATION - utf8_general_ci un MySQL connection collation utf8_general_ci. Vai es kautkādā veidā varu atbrīvoties no šiem ķeburiem "UzsÄkot darbÄ«bu jau sniedz iespÄ“ju" ? Paldies, jau iepriekš! Quote Link to comment Share on other sites More sharing options...
briedis Posted January 7, 2012 Report Share Posted January 7, 2012 ir uzstādīts konekcijas kodējums? pēc mysql_connect: mysql_query("SET NAMES UTF8"); Quote Link to comment Share on other sites More sharing options...
Kracker Posted January 8, 2012 Author Report Share Posted January 8, 2012 Nebija uzstādīts :) Paldies, viss strādā! Bet radās vēlviens jautājums, ko nozīmē "set sesion sql_mode=0"?:) Quote Link to comment Share on other sites More sharing options...
briedis Posted January 8, 2012 Report Share Posted January 8, 2012 Nezinu, pameklē gūglē :) Quote Link to comment Share on other sites More sharing options...
Edupuiks Posted January 14, 2012 Report Share Posted January 14, 2012 nesen esmu sācis apgūt MySQL+PHP web izstrādes priekus. diemžēl esmu sastapies ar problēmu, kuru nevaru atrisināt ar google starpniecību. tātad, problēma ar latviešu valodas tekstu ievadi MySQL datubāzes tabulas laukā. Neta resursos visur latviešiem problēma ar ķeburu atainošanu, kas parasti atrisinās visur norādot UTF-8 kodējumu. Manā gadījumā teksts ar garumzīmēm un mīkstinājuma zīmēm datubāzē VISPĀR NEUZRĀDĀS. Ja insertoju tekstu latviski, tad tabulas attiecīgā rinda paliek tukša. UTF-8 protams visur ir norādīts. SOLUTION?... Quote Link to comment Share on other sites More sharing options...
briedis Posted January 14, 2012 Report Share Posted January 14, 2012 Tiešām ir norādīts mysql_query("SET NAMES UTF8"); visur uzreiz pēc mysql_connect ? Pārādi datubāzes struktūru (kādi ir tabulu/lauku kodējumi). Quote Link to comment Share on other sites More sharing options...
Edupuiks Posted January 14, 2012 Report Share Posted January 14, 2012 tabulu veidoju ar šādu sintaksi: $sql = 'CREATE TABLE joke ( id int not null auto_increment primary key, joketext VARCHAR(999) character set utf8, //un šito laikam nemaz nav jānorāda, ja beigās ir default charset... jokedate DATE NOT NULL ) DEFAULT CHARACTER SET utf8'; problēma nav iekš PHP skripta. tikpat labi es varētu izveidot tabulu arī caur konsoli un tāpat arī ievadīt datus tai tabulā. vienalga man latviešu burti attēlojas kā tukšumi. tas nozīmē, ka problēma ir kautkur MySQL pusē. lūk ko es redzu konsolē: mysql> select * from joke4; +----+----------------+------------+ | id | joketext | jokedate | +----+----------------+------------+ | 1 | joks ar garumz | 0000-00-00 | | 2 | joks ar garumz | 0000-00-00 | | 3 | joks ar garumz | 0000-00-00 | | 4 | | 0000-00-00 | +----+----------------+------------+ 4 rows in set (0.00 sec) 4tais ieraksts ir "īķēņū". Iepriekšējie bija domāti kā "joks ar garumzīmēm" Quote Link to comment Share on other sites More sharing options...
briedis Posted January 14, 2012 Report Share Posted January 14, 2012 (edited) Mēģini: $sql = 'CREATE TABLE joke ( id int not null auto_increment primary key, joketext VARCHAR(999) collate utf8_latvian_ci, //un šito laikam nemaz nav jānorāda, ja beigās ir default charset... jokedate DATE NOT NULL ) DEFAULT CHARACTER=utf8 COLLATE=utf8_latvian_ci'; Iesaku veidot tabulas ar kādu rīku, piemēram, phpmyadmin.. Edited January 14, 2012 by briedis Quote Link to comment Share on other sites More sharing options...
Edupuiks Posted January 14, 2012 Report Share Posted January 14, 2012 diemžēl tas problēmu neatrisina. selectējot datus, iegūstu to pašu tekstu ar iztrūkstošiem burtiem. Vai šajā gadījumā nevarētu būt kāda problēma ar Apache servera valodas uzstādījumiem? Quote Link to comment Share on other sites More sharing options...
briedis Posted January 14, 2012 Report Share Posted January 14, 2012 Pašai lapai ir uzlikts UTF-8 kodējums? <meta http-equiv="content-type" content="text/html; charset=utf-8" /> Pamēģini novilkt un uzlikt phpmyadmin un paskatīties, kādi dati caur to ir redzami? Quote Link to comment Share on other sites More sharing options...
Edupuiks Posted January 14, 2012 Report Share Posted January 14, 2012 (edited) haha, tkko pats konstatēju kur problēma. rakstu skriptus caur notepad++. un nebiju ievērojis, ka encoding stāv uz ANSI. uzliku UTF-8 without BOM un beidzot pievienojās tabulai teksts ar garumzīmēm. tikai paliek jautājums, kāpēc caur konsoli pievienojot ierakstus tabulai garumzīmes vienalga neuzrāda. tas protams, nav tik svarīgi, jo visu jau izdarīs PHP skripti, bet tomēr... Edited January 14, 2012 by Edupuiks Quote Link to comment Share on other sites More sharing options...
briedis Posted January 14, 2012 Report Share Posted January 14, 2012 Nezinu, vai tā konsole tik labi atbalsta UTF-8... Quote Link to comment Share on other sites More sharing options...
Edupuiks Posted January 14, 2012 Report Share Posted January 14, 2012 nu enivei, paldies par info. šodien paliku vēl par gramu gudrāks :-D Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.