Jump to content
php.lv forumi

optimus

Reģistrētie lietotāji
  • Posts

    15
  • Joined

  • Last visited

About optimus

  • Birthday 12/25/1965

Contact Methods

  • Website URL
    http://
  • ICQ
    0

optimus's Achievements

Newbie

Newbie (1/14)

  1. Nu, es beidzot tiku ar savu problēmu galā ;-) Tas, ko es no visām darbībām sapratu, ka patiesībā MySQL 5 gadījumā jāsāk visu veidot pareizi jau no paša sākuma. Respektīvi, ja saits, jeb html kods ir ar windows-1257 kodējumu, tad datubāze jau pašā sākumā jāveido ar cp1257 charsetu un tabulu collation jābūt ar cp1257_general_ci. Tad nerodas nekādas problēmas un nav arī nepieciešama lieka darbība ar MySQL --> mysql_query("SET NAMES any_charset");, jeb vairākas liekas rindas php kodā. Attiecīgi, ja html ir utf-8, tad charsets datubāzei arī jāliek utf8 un tabulu collation jābūt utf8_general_ci vai utf8_latvian_ci (te man vēl jānoskaidro kura kurā gadījumā jāizmanto). Te arī nevajag to mysql_query("SET NAMES any_charset");. Situācijā, kad tiek izmantots hostingkompānijas MySQL, kā manā gadījumā, defaultā DB charsets ir latin1 un visu jauno tabulu collation automātiski ir latin1_swedish_ci, kas ir latin1 defaultā collation. Te arī rodas neprecizitātes, kad lapas html ir windows-1257, datubāzes un tabulas charset ir latin1 un collation ir latin1_swedish_ci. Šajā gadījumā arī sākas visvisādas rotaļas ar dumpiem un nepieciešams arī visu laiku tas mysql_query("SET NAMES necessary_charset");. Tik tālu nu es esmu ticis ar savien pētījumiem ;-) Ceru, ka esmu visu sapratis pareizi!
  2. Es tikai norādīju, ka manuālī ir teikts, ka cp1257_general ir defaultais priekš Latvijas. Jā, bet es jau te arī cenšos tā izdarīt kā tu saki
  3. Labi, es saprotu, ka var to SET NAMES izmantot, bet kuru tad Charsetu izmantot? Ja defaultā tabulai collation ir latin1_swedish_ci, tad likumsakarīgi būtu izmantot latin1 charsetu. Bet kad es tā izdarīju, tad vienalga lapā latv. vārdi bija nepareizi, tikai "U?is" vietā parādījās "UÄ£is" un ne miņas no "Uģis". Kur tad kļūda? Var jau visu salikt uz utf-8, tas jau būtu ideāli, tomēr es nevaru pārcelt visu lapu uz utf-8 ne vinas dienas, ne nedēlas laikā. Un arī SET NAMES variants ir tikai ielāps, kuru var izmantot, bet tas, domājams, nav īstais risinājums. Jo pareizi būtu izmantot pareizo charsertu un pareizo collation, bez SET NAMES. Tā vismaz es domāju.
  4. Par to ci/cs sapratu, to izlasīju arī manuālī. Tomēr, ņemot vērā, ka tur rakstīts: A character set is a set of symbols and encodings. A collation is a set of rules for comparing characters in a character set. Tātad - character set ir kodējums kas nosaka kādi simboli ietilpst katrā konkrētā kodējumā, bet collation ir noteikumu kopums, kas nosaka kā katra noteikta kodējuma simboli tiks kārtoti un kādas darbības ar tiem var tikt veiktas. Character set Suppose that we have an alphabet with four letters: ‘A’, ‘B’, ‘a’, ‘b’. We give each letter a number: ‘A’ = 0, ‘B’ = 1, ‘a’ = 2, ‘b’ = 3. The letter ‘A’ is a symbol, the number 0 is the encoding for ‘A’, and the combination of all four letters and their encodings is a character set. Collation Suppose that we want to compare two string values, ‘A’ and ‘B’. The simplest way to do this is to look at the encodings: 0 for ‘A’ and 1 for ‘B’. Because 0 is less than 1, we say ‘A’ is less than ‘B’. What we've just done is apply a collation to our character set. The collation is a set of rules. Tā tālāk seko secinājums: MySQL can do these things: Store strings using a variety of character sets Compare strings using a variety of collations Mix strings with different character sets or collations in the same server, the same database, or even the same table Allow specification of character set and collation at any level. Tiktālu es saprotu, bet kā to pielietot reālajā dzīvē - tas jāapgūst
  5. Paldies, šito izmēģināšu, varbūt kaut kas noskaidrosies!
  6. Vai kāds šajā forumā beidzot var paskaidrot, kā iedumpēt MySQL 5 tabulā datus ar latviešu rakstuzīmēm, piem., "Uģis", tā lai tie lapā tiktu atainoti pareizi, nevis "U?is". Lasu šo forumu jau vairākas stundas un saprotu ka nevienam tāpat tā īsti tas nav skaidrs, tāpēc šie jautājumi dažādās variācijās atkārtojas. Sūta cits citu uz Googli, izsaka dažādas vairāk vai mazāk pārgudras piezīmes, tomēr lietas patieso būtību tāpat neviens neprot izskaidrot, kaut gan, esmu pārliecināts, ka ir tādi cilvēki kas var normāli izskaidrot to enkodinga sistēmu. Manā gadījumā: MySQL tabulas lauki ir ar latin1_swedish_ci kodējumu (kā noprotu, tas ir Latvijas noklusētais) Lapa, kurā jāattēlo informācija ir ar windows-1257 kodējumu. Pateikšu godīgi - es tā īsti līdz galam nesaprotu kas ir Collation un kā ar to pareizi rīkoties. Centos lasīt MySQL manuāli, tomēr nespēju izprast to lietu. Patiesībā vēlos, lai kāds beidzot vienkārši pasāka parastas loģiskas darbības kā veikt dampu, lai viss tiktu attēlots pareizi?
  7. OK, paldies, pastudēšu! Mopirku "636" krutu grāmatu par MySQL par Ls 9.90, bet tur nu viss tik uberextra aprakstīts, ka iepriekš vēl sešas grāmatas jānopērk, lai tu kruto saprastu. Nopietni runājot, tur viss TIK detalizēti uzrakstīts, ka paliek jau grūti izprast pareizo domu
  8. Nu, gudrais cilvēk,pastāsti, kur var sīkāku infu par to visu (collation) dabūt. Es arī cīnos ar šo problēmu.
  9. optimus

    utf-8 editor

    Es jau ilgstoši lietoju Crimson Editor! manuprāt piemērots visos gadījumos! Crimson editor 3.51
  10. Nu tik vienkārši vis nebūs! ;-) Es jau arī līdz tam aizdomājos, tomēr, tad atkal no saita veiktie ieraksti atspoguļojas nekorekti (????). Patiesībā atbilstošais izrādījās utf8_latvian_ci, bet arī par to tā īsti neesmu pārliecināts. Saprotu ka jālasa jaunā MySQL manuālis, arī phpmyadmin manuālis. Jo vēl jau ar to problēmas nav beigušās. Principā sanāk ka tagad veidojot jaunu MySQL tabulu, jānorāda arī parizais izkārtojums tabulas laukiem, citādi tas phpmyadmin (jaunais) atkal uzliks savu defaulto latin1_swedish_ci. Patiesībā, domāju, ka uz Serveris.Lv ir kautkāda kļūda ar jaunā phpMyAdmin konfigurēšanu. Tikko pats iekačāju saunāko phpMyAdmin, likšu uz kompa un testēšu, varbūt radīsies skaidrība ;-) http://php.lv/f/index.php?showtopic=3107&hl=utf8 te un vēl citās vietās puiši risina tās pašas problēmas. Raādās ka problēma aktualizējās tieši sākot ar jaunajuem PHPMYADMIN un MYSQL Nu, tagad visi draudzīgi no windows-1257 pārejam uz utf-8
  11. Jā, jā, es arī ar to pašu saskaros uz Serveris.Lv. Tur arī uzlika jauno PhpMyAdmin un tagad visi mani windows-1257 ierakstu izkārtojumi defaultā ir latin1_swedish_ci un latviešu rakstuzīmju vietā ir ?????. No saita veiktie ieraksti atspoguļojas pareizi un viss notiek, bet tikko veicu ierakstus no PhpMyAdmin tā viss parādās ar ?????. No tā secinu, ka vaina ir nevis MySQL, bet gan tieši PmpMyAdmin! Kad zvanīju uz Serveris.Lv adminam, viņš man tā īsti arī nemācēja atbildēt. It īpaši par to latin1_swedish_ci ;-) Bet, sakiet lūdzu, KO DARĪT???
  12. Es šo lietu apdomāšu, - paldies! Tikai biju iedomājies ka ir kaut kādi man nezināmi tieši MySQL līdzekļi. Protams, arī šis vaiants ir visnotaļ labs!
  13. Vai kāds var ieteikt veidu, kā veikt automātisku ierakstu dzēšanu no MySQL pēc laika, izmantojot MySQL time funkcijas. Piemēram, izmantojot lauku kas satur TIMESTAMP vērtību, izdzēst ierakstu tieši pēc divām nedēļām (14 dienām). Vai to ar MySQL līdzekļiem var izdarīt? vai jāraksta skripts, kas katru dienu, piemēram, pirmajam apmeklētājam atverot lapu, vienkārši dzēš ierakstus, kuri ir vecāki? Kā rīkoties! A!?
  14. Vai kāds var sakarīgi paskaidrot kā pareizi nokonfogurēt to PHP, lai tas darbotos ar PEAR. Esmu visādi izmēģinājies, taču man nekas neizdodas :angry: Vārdu sakot, - kā pareizi vajag iekš php.ini, kurā direktorijā jāatrodas PEAR mapei un.tt.? Gan jau kāds būs ar to ņēmies...
×
×
  • Create New...