Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Cirilicno vreme na satu

[es] :: PHP :: Cirilicno vreme na satu

[ Pregleda: 2342 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

HolyWarrior
Nikola Krstic
Cuprija

Član broj: 294734
Poruke: 2
178.79.27.*



Profil

icon Cirilicno vreme na satu04.12.2011. u 15:35 - pre 150 meseci
Pokusavam da postavim vreme unetog komentara na sajtu, ali zelim da dobijem format recimo 26. dec 2011. ponedeljak, ail zelim da mi "dec" i "ponedelja" budu ispisani cirilicom.

Kod trenutno izgleda ovako, pa ukoliko neko zna da ga prepravi ili da mi kaze gde trebam da ispravim, bio bih vam veoma zahvalan. :)

<?php
$upit = 'SELECT Naslov, Tekst, Vreme FROM Novost ORDER BY Vreme DESC';
if(($rezultat = mysql_query($upit, $konekcija)) && ($zapis = mysql_fetch_assoc($rezultat)))
{
?>
<?php echo date("l d.m.Y.", strtotime($zapis['Vreme'])); ?>
<br>
<?php echo $zapis['Naslov']; ?><br>
<?php echo $zapis['Tekst']; ?>
<br>
<?php while($zapis = mysql_fetch_assoc($rezultat)){ ?>
<br>................................................................................................................................................
<br>
<?php echo date("l d.m.Y.", strtotime($zapis['Vreme'])); ?><br>
<?php echo $zapis['Naslov']; ?><br>
<?php echo $zapis['Tekst']; ?>
<?php
}
}
?>

Ukoliko vam trebaju jos neke informacije, slobodno pitajte, znacilo bi mi da resim ovaj problem.
живите свој живот
 
Odgovor na temu

kelja

Član broj: 70429
Poruke: 1416
*.dynamic.isp.telekom.rs.



+35 Profil

icon Re: Cirilicno vreme na satu04.12.2011. u 17:14 - pre 150 meseci
Code:

<?php 
$days=array('Monday','Tuesday','Wednesday','Thursday','Friday','Sathurday','Sunday');
$days_cir=array('Ponedeljak','Utorak', 'Sreda', 'Četvrtak', 'Petak', 'Subota', 'Nedelja'); //ovo ce ES da konvertuje u latinicu, ali hajde...



$upit = 'SELECT Naslov, Tekst, Vreme FROM novost ORDER BY Vreme DESC';
$rezultat = mysql_query($upit, $link);
?>

<?php while($zapis = mysql_fetch_array($rezultat)){ ?>
<br>................................................................................................................................................
<br>
<?php 


$datum=date("l d.m.Y.", strtotime($zapis['Vreme']));

for($i=0;$i<count($days);$i++){
    if(preg_match('%'.$days[$i].'%',$datum)) {
    $cir_datum=str_replace($days[$i],$days_cir[$i],$datum);
echo $cir_datum;    
    }
}

//
?><br>
<?php echo $zapis['Naslov']; ?><br>
<?php echo $zapis['Tekst']; ?>
<?php
}

?>




Sigurno ima boljih resenja, ne znam da li ce ovo da bude sporo kod izvlacenja velikog broja zapisa, ali... eto, valjda je malo pomoglo... isti princip koristis za zamenu brojeva meseci cirilicnim tekstom...
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-3.sezampro.rs.



+33 Profil

icon Re: Cirilicno vreme na satu04.12.2011. u 17:59 - pre 150 meseci
Code:
$language = 'sr_Cyrl';
putenv('LANG=' . $language);
setlocale(LC_ALL, $language);

echo strftime("%e. %B %Y., %A", mktime(0, 0, 0, 12, 4, 2011));

To bi trebalo da ispiše: 4. decembar 2011., nedelja. Naravno, da bi ovo radilo, treba da imaš instaliran taj locale na tvojoj mašini.

btw Imaj samo na umu da %e nije podržan na Windows-u, pa će u slučaju da ovo probaš na tom OS-u, strftime() vratiti prazan string. Kao alternativu, na Windows-u možeš da koristiš %#d.

[Ovu poruku je menjao Nikola Poša dana 04.12.2011. u 19:11 GMT+1]
 
Odgovor na temu

HolyWarrior
Nikola Krstic
Cuprija

Član broj: 294734
Poruke: 2
178.79.27.*



Profil

icon Re: Cirilicno vreme na satu04.12.2011. u 18:06 - pre 150 meseci
Hvala na brzom odgovoru, ali mi nije resilo problem, izbacuje mi gomilu gresaka i kako koju ispravim i dalje dobijem isti rezultat, odnosno ne dobijem ono sto zelim.

Znam da takva opcija postoji u Podesavanjima WordPressa gde se jednostavno izabere jezik i dobije se zeljeni rezultat, ali u phpMyadmin nemam opciju da izaberem Cirilicni jezik.
Mozda sve ovo zvuci glupo, ali zaista ne znam resenje.

Hvala jos jednom.
живите свој живот
 
Odgovor na temu

kelja

Član broj: 70429
Poruke: 1416
*.dynamic.isp.telekom.rs.



+35 Profil

icon Re: Cirilicno vreme na satu04.12.2011. u 18:17 - pre 150 meseci
Citat:
Nikola Poša
Code:
$language = 'sr_Cyrl';
putenv('LANG=' . $language);
setlocale(LC_ALL, $language);

echo strftime("%e. %B %Y., %A", mktime(0, 0, 0, 12, 4, 2011));

To bi trebalo da ispiše: 4. decembar 2011., nedelja. Naravno, da bi ovo radilo, treba da imaš instaliran taj locale na tvojoj mašini.

btw Imaj samo na umu da %e nije podržan na Windows-u, pa će u slučaju da ovo probaš na tom OS-u, strftime() vratiti prazan string. Kao alternativu, na Windows-u možeš da koristiš %#d.

[Ovu poruku je menjao Nikola Poša dana 04.12.2011. u 19:11 GMT+1]


He, he, znao sam da je to reseno vec, efikasno...

no, ono moje, ako ovo ne fercera (iz ko zna kojih razloga), sigurno radi. :D
 
Odgovor na temu

ivan.a
PHP developer

Član broj: 83976
Poruke: 403
*.dynamic.isp.telekom.rs.



+44 Profil

icon Re: Cirilicno vreme na satu04.12.2011. u 18:31 - pre 150 meseci
Za ćirilicu i latinicu:

Code:
setlocale(LC_ALL, 'Serbian (Cyrillic)_Serbia and Montenegro.1251');

echo strftime("%A %d %B %Y", mktime(0, 0, 0, 12, 22, 1978));
echo "<br />";
setlocale(LC_TIME, 'Serbian (Latin)_Serbia and Montenegro.1250');
echo strftime("%A %d %B %Y", mktime(0, 0, 0, 12, 22, 1978));
echo "<br />";

$loc_sr = setlocale(LC_TIME, '[email protected]', 'sr', 'sr_CS', 'serbian');
echo "Preporucena lokalizacija na ovom serveru: '$loc_sr'";

Nekad neće da rade sve lokalizacije što zavisi od servera.
Ja bih radije napravio funkciju za imena meseca i dana u kombinaciji sa date funkcijom.
I hope I didn't brain my damage - Homer
if (wife.position == kitchen) {return sandwich};
 
Odgovor na temu

kelja

Član broj: 70429
Poruke: 1416
*.dynamic.isp.telekom.rs.



+35 Profil

icon Re: Cirilicno vreme na satu05.12.2011. u 12:23 - pre 150 meseci
Evo, na primer, ovako:

Code:

function ciriliziraj_tm($item) {
$days=array('Monday','Tuesday','Wednesday','Thursday','Friday','Sathurday','Sunday');
$days_cir=array('Ponedeljak','Utorak', 'Sreda', 'Četvrtak', 'Petak', 'Subota', 'Nedelja');

$months=array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
$months_cir=array('Januar','Februar','Mart','April','Maj','Jun','Jul','Avgust','Septembar','Oktobar','Novembar','Decembar');

for($i=0;$i<count($days);$i++){
    if(preg_match('%'.$days[$i].'%',$item)) {
    $cir_datum=str_replace($days[$i],$days_cir[$i],$item);

    }
}

for($i=0;$i<count($months);$i++){
    if(preg_match('%'.$months[$i].'%',$cir_datum    )) {
    $cir_datum=str_replace($months[$i],$months_cir[$i],$cir_datum);

    }
}
return $cir_datum;    

}

//podrazumevani unos:
$datum=date("l d. M Y.", strtotime($zapis['Vreme']));  //dakle, ime meseca umesto broja!!!!

//upotreba

echo ciriliziraj_tm($datum);





Da, pravopisni naputak ™ - imena meseci se pisu malim slovom, kod nas... :D
 
Odgovor na temu

[es] :: PHP :: Cirilicno vreme na satu

[ Pregleda: 2342 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.