Autorius Tema: kaip rikiuoti su php lietuviskus zodzius?  (Skaityti 101 kartai)

Lukas Liesis

  • Administratorius
  • Super HEROJUS
  • Žinutės: 3959
  • Karma: +117/-12

  • Aktyvumas per 30d.
    100%
kaip rikiuoti su php lietuviskus zodzius?
« : 2011-02-27 18:51:16 »
sveiki, yra sql lentele kurioje suvestos reiksmes - lietuviski zodziai. reikia istraukti juos abeceles tvarka. problema tame, kad lietuvisku raidziu neatpazista ir isdestymas zodziu yra neteisingas.
lygiai tas pats yra su masyvais. pvz.:

$a = array(
            'pirmas' => 'azuolas',
            'antras' => 'Ąžuolas',
            'trecias' => 'cevuls',
            'ketvirtas' => 'čevulis',
            'penktas' => 'Ąnanasas su ą :D',
            'sestas' => 'Bananas'
        );

padarius taip:

<?php
        
print '<h2>Be sort</h2>';
        
print_r($a);
        
sort($a);
        print 
'<h2>SU sort</h2>';
        
print_r($a);
?>


isveda toki vaizda:

Be sort
Array
(
    [pirmas] => azuolas
    [antras] => Ąžuolas
    [trecias] => cevuls
    [ketvirtas] => čevulis
    [penktas] => Ąnanasas su ą :D
    [sestas] => Bananas
)

SU sort
Array
(
   
  • => Bananas
  • [1] => azuolas
        [2] => cevuls
        [3] => Ąnanasas su ą :D
        [4] => Ąžuolas
        [5] => čevulis
    )



    tai va, laukiu pasiulymu kaip rikiuoti lt zodzius :) visokiu, gal i duombaze koki papildoma stulpeli ideti, gal nosines pakeisti kazkuo kitu ar t.t. zodziu siulykit :)
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
Jums patinka manualai.lt projektas?
serveriai.lt 50% nuolaida!

Macaque

  • HEROJUS
  • Žinutės: 806
  • Karma: +25/-0
  • makakuje.

  • Aktyvumas per 30d.
    21.18%
Re: kaip rikiuoti su php lietuviskus zodzius?
« Atsakyti #1 : 2011-02-27 21:39:11 »
Nebandei ištraukęs iš DB pakeisti raidžių tipą su setlocate?

php.net - http://php.net/manual/en/function.setlocale.php
„Tik vienas dalykas gali svajonę padaryti neįgyvendinamą: tai baimė, kad nepasiseks. “ - Paulo Coelho

mano čiulbesiai

Lukas Liesis

  • Administratorius
  • Super HEROJUS
  • Žinutės: 3959
  • Karma: +117/-12

  • Aktyvumas per 30d.
    100%
Re: kaip rikiuoti su php lietuviskus zodzius?
« Atsakyti #2 : 2011-02-27 22:17:29 »
radau pilna vietu kur rase, kad buginas daznai su situ dalyku + keicia kazkaip php core'a ir gali pakenkt kitoms svetainems, zodziu daug salutiniu poveikiu.. issprendziau kitaip galiausiai. ten kadangi yra kategoriju pavadinimai, as padariau taip, kad ivedant kategorija i sql iveda papildoma reiksme rikiavimui ir visas lt. raides pakeiciu pvz ą tai a_ č tai c_ ir t.t. ir parikiuoju su pavadinimais be lt raidziu :) veikia gana neblogai, tik pagal abecele turetu buti aąbcč o pas mane gavosi ąabčc, bet tai nesvarbu kaip ir :)
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
Jums patinka manualai.lt projektas?
serveriai.lt 50% nuolaida!

KNx

  • Kietas forumietis
  • Žinutės: 156
  • Karma: +1/-3

  • Aktyvumas per 30d.
    14.12%
Re: kaip rikiuoti su php lietuviskus zodzius?
« Atsakyti #3 : 2011-02-27 22:30:32 »
O jei tau pabandžius padaryti a_ , o taip ą pvz pakeisti į a? nu pvz
a_ - rodytu pirmiau
a - sekantis

Gal ir kvaila, bet ar ne geriau būtų? (tiesa, tektu pavargti manau)

ganjabest

  • HEROJUS
  • Žinutės: 695
  • Karma: +30/-0
  • Povilas Stankevičius

  • Aktyvumas per 30d.
    100%
Re: kaip rikiuoti su php lietuviskus zodzius?
« Atsakyti #4 : 2011-02-27 22:32:59 »
pasirasyk masyva su visomis abeceles raidemis ir su ciklu tikrink kiekviena pirma raide.. kaip viena istrauki po to tikrini pagal kita.. Nu kazkaip taip daryt gal galima  :)
Visi žmonės kaip žmonės - tik aš vienas kaip dievas!

Lukas Liesis

  • Administratorius
  • Super HEROJUS
  • Žinutės: 3959
  • Karma: +117/-12

  • Aktyvumas per 30d.
    100%
Re: kaip rikiuoti su php lietuviskus zodzius?
« Atsakyti #5 : 2011-02-28 09:03:40 »
O jei tau pabandžius padaryti a_ , o taip ą pvz pakeisti į a? nu pvz
a_ - rodytu pirmiau
a - sekantis

Gal ir kvaila, bet ar ne geriau būtų? (tiesa, tektu pavargti manau)


rimtas, gal ir iseis :) kazkaip nepagalvojau keisti ne lt raidziu ;]


pasirasyk masyva su visomis abeceles raidemis ir su ciklu tikrink kiekviena pirma raide.. kaip viena istrauki po to tikrini pagal kita.. Nu kazkaip taip daryt gal galima  :)


problema tame, kad reiktu kiekvienam tikrinimui istraukti visus irasus is sql ir juos patikrinti su php. php kiek zinau kur kas leciau tai padarytu, nei sql, todel reikia stengtis filtravimus, skaiciavimus visokius kiek galima padaryti su paciu sql :)
« Paskutinis taisymas: 2011-02-28 09:05:11 nuo Lukas Liesis »
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
Jums patinka manualai.lt projektas?
serveriai.lt 50% nuolaida!

ganjabest

  • HEROJUS
  • Žinutės: 695
  • Karma: +30/-0
  • Povilas Stankevičius

  • Aktyvumas per 30d.
    100%
Re: kaip rikiuoti su php lietuviskus zodzius?
« Atsakyti #6 : 2011-02-28 17:49:47 »
Esme tame kad jei darysi rikiavima pagal a_ a__ tau surikiuos tik pagal pirmas raides, o pagal taisykle jeigu raides pirmos vienodos rikiuoja pagal antra .. tai pamaniau kad galima rasytis i atskira lentele pirmasias zodziu raides .. Tada traukiti irasus pagal tos lenteles raides nurodant vis kita raide is pasidaryto masyvo, o rikiavima uzdeti ant zodziu..
Bet cia vel problema jeigu bus antra lietuviska raide rikiuos klaidingai  :D
Zodziu iseitis daryti rikiavima pagal pirma raide o i sekancias nekreipti demesio  :D
Visi žmonės kaip žmonės - tik aš vienas kaip dievas!

Lukas Liesis

  • Administratorius
  • Super HEROJUS
  • Žinutės: 3959
  • Karma: +117/-12

  • Aktyvumas per 30d.
    100%
Re: kaip rikiuoti su php lietuviskus zodzius?
« Atsakyti #7 : 2011-02-28 23:13:34 »
as visas nosines pakeiciu su e_ arba arba ė tai e__ kad ir kurioj vietoj ji butu zodyje ir pakankamai gerai veikia, kad vienas kitas ne idealiai pagal abc bus, tai tikrai ne beda :) svarbu kad butu tvarka bendrai paemus, nieks ten nesigilins taip atydziai, o jei ir pasigilins, tai koks skirtumas :)
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
Jums patinka manualai.lt projektas?
serveriai.lt 50% nuolaida!

ganjabest

  • HEROJUS
  • Žinutės: 695
  • Karma: +30/-0
  • Povilas Stankevičius

  • Aktyvumas per 30d.
    100%
Re: kaip rikiuoti su php lietuviskus zodzius?
« Atsakyti #8 : 2011-02-28 23:55:31 »
Aisku dabar. Pirmai kitaip biski issivaizdavau  :)
Visi žmonės kaip žmonės - tik aš vienas kaip dievas!