• 17 odgovora
  • 9.851 pregleda
cirilica u latinicu sa str_replace? 04.02.2007. u 01:22 · pre 240 meseci #1
Da li je izvodivo? Ako jeste sta onda ovde ne valja?

Code:

$cirilica = array("lj", "nj", "e", "r", "t", "z", "u", "i", "o", "p", "š", "đ", "ž", "a", "s", "d", "f", "g", "h", "j", "k", "l", "č", "ć", "dž", "c", "v", "b", "n", "m", "Lj", "Nj", "E", "R", "T", "Z", "U", "I", "O", "P", "Š", "Đ", "Ž", "A", "S", "D", "F", "G", "H", "J", "K", "L", "Č", "Ć", "Dž", "C", "V", "B", "N", "M");
$latinica = array("lj", "nj", "e", "r", "t", "z", "u", "i", "o", "p", "š", "đ", "ž", "a", "s", "d", "f", "g", "h", "j", "k", "l", "č", "ć", "dž", "c", "v", "b", "n", "m", "Lj", "Nj", "E", "R", "T", "Z", "U", "I", "O", "P", "Š", "Đ", "Ž", "A", "S", "D", "F", "G", "H", "J", "K", "L", "Č", "Ć", "Dž", "C", "V", "B", "N", "M");
$latinicnitekst = str_replace($cirilica, $latinica, $cirilicnitekst);
Potpis
Parental Advisory
Re: cirilica u latinicu sa str_replace? 04.02.2007. u 01:27 · pre 240 meseci #2
Hmmm, sad ovo gledam i vidi cuda i u prvoj i u drugoj varijabli su latinicna slova. Inace, u originalu su sva cirilicna slova u nizu $cirilica ali je ovde to ES ocigledno izmenuo. Nije bitno, pitanje je isto...
Potpis
Parental Advisory
Re: cirilica u latinicu sa str_replace? 04.02.2007. u 02:09 · pre 240 meseci #6
Dobro. Ipak, obzirom da stranica ima oko 500 redova malo cu skratiti. Dacu ti samo bitne delove. Ok, evo pocetak.

Ovde se ucitavaju tekstovi iz MySQL baze i to engleski ako je $lang == 1 a srpski (cirilica) ako je $lang == 2. Potom se ukoliko je $cir == 1 zamenjuju cirilicna slova sa latinicnim. Evo:
Code:

$link=mysql_connect ("localhost", "username", "password") or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db ("databasename");
//gotov pocetak
$jezik= $_GET['lang'];
$cir= $_GET['cir'];
if ($jezik=="")
{
$jezik="1";
}

$rezultat=mysql_query("SELECT uvod1, uvod2, uvod3  FROM  photo_home WHERE id=$jezik;");
while ($red = mysql_fetch_array($rezultat))
{
$uvod1=$red["uvod1"];
$uvod2=$red["uvod2"];
$uvod3=$red["uvod3"];
} 
$rezultat=mysql_query("SELECT welcome, naslov, oldupdates, pridruzise, network, search, gogog, forum, kopibottom, archive  FROM  photo_menumain WHERE id=$jezik;");
while ($red = mysql_fetch_array($rezultat))
{

$welcome=$red["welcome"];
$naslov=$red["naslov"];
$oldupdates=$red["oldupdates"];
$join=$red["pridruzise"];
$network=$red["network"];
$search=$red["search"];
$gogog=$red["gogog"];
$forum=$red["forum"];
$kopibottom=$red["kopibottom"];
$archive=$red["archive"];
} 
if ($cir == 1) {
$cirilica = array("lj", "nj", "e", "r", "t", "z", "u", "i", "o", "p", "š", "đ", "ž", "a", "s", "d", "f", "g", "h", "j", "k", "l", "č", "ć", "dž", "c", "v", "b", "n", "m", "Lj", "Nj", "E", "R", "T", "Z", "U", "I", "O", "P", "Š", "Đ", "Ž", "A", "S", "D", "F", "G", "H", "J", "K", "L", "Č", "Ć", "Dž", "C", "V", "B", "N", "M");
$latinica = array("lj", "nj", "e", "r", "t", "z", "u", "i", "o", "p", "š", "đ", "ž", "a", "s", "d", "f", "g", "h", "j", "k", "l", "č", "ć", "dž", "c", "v", "b", "n", "m", "Lj", "Nj", "E", "R", "T", "Z", "U", "I", "O", "P", "Š", "Đ", "Ž", "A", "S", "D", "F", "G", "H", "J", "K", "L", "Č", "Ć", "Dž", "C", "V", "B", "N", "M");
$uvod1 = str_replace($cirilica, $latinica, $uvod1);
$uvod2 = str_replace($cirilica, $latinica, $uvod2);
$uvod3 = str_replace($cirilica, $latinica, $uvod3);
$welcome = str_replace($cirilica, $latinica, $welcome);
$naslov = str_replace($cirilica, $latinica, $naslov);
$join = str_replace($cirilica, $latinica, $join);
$network = str_replace($cirilica, $latinica, $network);
$search = str_replace($cirilica, $latinica, $search);
$gogog = str_replace($cirilica, $latinica, $gogog);
$forum = str_replace($cirilica, $latinica, $forum);
$kopibottom = str_replace($cirilica, $latinica, $kopibottom);
$archive = str_replace($cirilica, $latinica, $archive);
}
?>


Eto, to je taj deo gde bi trebalo da se dogodi zamena. Za eho mislim da nemam potrebe da ista izbacujem ali evo ipak par njih.

Code:

<td width="100%" class="style12"><p><strong><span class="style9"><?php echo $welcome ?></span></strong></p></td>


Ne vidim sta ima da ne valja tu. A ni ovde:

Code:

<td align="center"><span class="style7"><?php echo $join ?></span></td>


To bi bilo to sto ti je potrebno. Ne verujem da ima ista vise sto ti moze pomoci.
Potpis
Parental Advisory
Re: cirilica u latinicu sa str_replace? 04.02.2007. u 02:20 · pre 240 meseci #7
Ajde probaj ovako, samo da vidimo da li radi:

Code:
$cirilica = array("lj", "nj", "e", "r", "t", "z", "u", "i", "o", "p", "š", "đ", "ž", "a", "s", "d", "f", "g", "h", "j", "k", "l", "č", "ć", "dž", "c", "v", "b", "n", "m", "Lj", "Nj", "E", "R", "T", "Z", "U", "I", "O", "P", "Š", "Đ", "Ž", "A", "S", "D", "F", "G", "H", "J", "K", "L", "Č", "Ć", "Dž", "C", "V", "B", "N", "M");
$latinica = array("lj", "nj", "e", "r", "t", "z", "u", "i", "o", "p", "š", "đ", "ž", "a", "s", "d", "f", "g", "h", "j", "k", "l", "č", "ć", "dž", "c", "v", "b", "n", "m", "Lj", "Nj", "E", "R", "T", "Z", "U", "I", "O", "P", "Š", "Đ", "Ž", "A", "S", "D", "F", "G", "H", "J", "K", "L", "Č", "Ć", "Dž", "C", "V", "B", "N", "M");

$tekst = 'ćirilični tekst'; //i gore u $cirilica su ćirilična slova
$tekst = str_replace($cirilica, $latinica, $tekst);
echo $tekst;


Ako to radi, onda nije greška u tom delu (koji si u prvoj poruci napisao).

Pozdrav.
Asta manjana
Potpis
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
Re: cirilica u latinicu sa str_replace? 04.02.2007. u 08:34 · pre 240 meseci #9
ne znam ni sam zbog cega...valjda nemogu da spavam a vec je 3 ujutru...
zadnjih pola sata razmisljam na koji bi nacin ovo udradio...

jedino sto mi pada na pamet...


$latinica = str_replace ("a", "a", $latinica);
$latinica = str_replace ("b", "b", $latinica);
$latinica = str_replace ("c", "c", $latinica);
.
.
.
.
$latinica = str_replace ("z", "z", $latinica);


i ovaj dio izbacio
Code:

$cirilica = array("lj", "nj", "e", "r", "t", "z", "u", "i", "o", "p", "š", "đ", "ž", "a", "s", "d", "f", "g", "h", "j", "k", "l", "č", "ć", "dž", "c", "v", "b", "n", "m", "Lj", "Nj", "E", "R", "T", "Z", "U", "I", "O", "P", "Š", "Đ", "Ž", "A", "S", "D", "F", "G", "H", "J", "K", "L", "Č", "Ć", "Dž", "C", "V", "B", "N", "M");
$latinica = array("lj", "nj", "e", "r", "t", "z", "u", "i", "o", "p", "š", "đ", "ž", "a", "s", "d", "f", "g", "h", "j", "k", "l", "č", "ć", "dž", "c", "v", "b", "n", "m", "Lj", "Nj", "E", "R", "T", "Z", "U", "I", "O", "P", "Š", "Đ", "Ž", "A", "S", "D", "F", "G", "H", "J", "K", "L", "Č", "Ć", "Dž", "C", "V", "B", "N", "M");

$tekst = 'ćirilični tekst'; //i gore u $cirilica su ćirilična slova
$tekst = str_replace($cirilica, $latinica, $tekst);
echo $tekst;



sa obzirom da nemam citavu skripu... i nemogu da testiram.. to je moj najbolji predlog...

sad odo' da spavam
p.s.
znam da nisam bio od neke koristi..aliii pokusao sam
Potpis
Posle svega što sam prošao noću teško zaspim.
A preko dana naspem, tu i tamo i povučem,
samo malo da se sredim, nisam ja navučen.
Re: cirilica u latinicu sa str_replace? 04.02.2007. u 10:45 · pre 240 meseci #10
Uffff... Da, palo je to i meni na pamet sinoc ali sam odmah odbacio jer ima way too much code! Kada ukljucim sve varijable (a ovo je tek pocetak razvoja, bice ih jos) poprilicno cu povecati fajlove i morati da kucam. Neka, dajte jednostavniji predlog. Pre svega me zanima zasto onako ne radi. Ono je potpuno po PS-u. Trebalo bi da radi.
Potpis
Parental Advisory
Re: cirilica u latinicu sa str_replace? 04.02.2007. u 11:03 · pre 240 meseci #12
Hm, nesto zanimljivo se desava. Tvoj code radi ali kada ga prebacim u svoju stranicu ne radi. Ima jos nesto zanimljivije. Kada sam sad ponovo otvorio stranicu od sinoc u Dreamweaveru sva cirilicna slova u nizu su zamenjena upitnicima. Sad sam sve prepravio preko Notepada i snimio kako treba, uploadovao i konacno radi. Dobro, znamo u cemu je bio problem...

Hvala na pomoci!
Potpis
Parental Advisory
Re: cirilica u latinicu sa str_replace? 04.02.2007. u 11:08 · pre 240 meseci #13
Dobro, a kako sad da namestim u Dreamweaveru da mi ne snima pogresno cirilicne znakove? Znam da je malo offtopic ali je povezano...
Potpis
Parental Advisory
Re: cirilica u latinicu sa str_replace? 04.02.2007. u 11:12 · pre 240 meseci #14
Ne znam, ne koristim Windows trenutno, pa samim tim nemam ni DW. Valjda u Save as dialogu imaš ispod imena fajla (tj. ispod tipa fajla) u kom enkodingu će ga snimiti. Prebaci to na UTF-8 i trebalo bi da radi.
Potpis
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
Re: cirilica u latinicu sa str_replace? 04.02.2007. u 11:16 · pre 240 meseci #15
Tako sam to uradio u Notepadu ali u DWu nema ima samo Unicode normalization form. Inace, vec sam pre nastimao u Modify page properties da bude utf-8. Nije bitno. Snacicu se. Ako neko pak zna nek javi.
Potpis
Parental Advisory
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme