Eur => skk – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Eur => skk – PHP – Fórum – Programujte.comEur => skk – PHP – Fórum – Programujte.com

 

netman920
Super člen
6. 1. 2009   #1
-
0
-

Ahoj,
mam taký problém..
potreboval by som z textu, ktorý beriem z databázy automaticky premeniť sumu v sk na euro.
Napr: text je "cena: 120sk" a po prejdení skriptom by to vyhodilo: "cena : 3€ (120sk)" a naopak,
medzi sumou v real a menou by mohla/nemusela byť medzera.

Išlo by to nejako? Dík

Nahlásit jako SPAM
IP: 87.244.226.–
marioff0
Expert
6. 1. 2009   #2
-
0
-

<?php

$vstup = "cena: 120sk";

if (eregi("^cena: ([0-9]+)sk$", $vstup, $vysledok)) {
$vystup = "cena: ".round($vysledok[1] / 30.126, 2)."€ (".$vysledok[1]."sk)";
}

echo $vystup; // cena: 3.98€ (120sk)
?>


ale newiem ako myslis zobrazit opacne... aky by tam bol potom vstup??
a este sa chcem opytat preco je tak zadana cena v databaze... preco nie napr. v int... double...atd...????

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
netman920
Super člen
6. 1. 2009   #3
-
0
-

To marioff :
1) naopak myslim ze v databaze bude iba 30eur a ono to napise 30eur (120sk)
2) v databaze je cely članok a v tom niekde je občas spomenutá suma
3) nie vzdy to zacina "cena" moze tam byt nieco ine alebo nic skusim to nejak prerobit

dik pomohol si mi aspon trochu

Nahlásit jako SPAM
IP: 87.244.226.–
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
6. 1. 2009   #4
-
0
-



$text = "Cena:\n";
$eurToSkk = '';
$zaokrh = round($vzorec,3);
$vzorec = $_GET['skk']/30,126;
echo "$text $eurToSkk";

Nahlásit jako SPAM
IP: 85.135.231.–
netman920
Super člen
6. 1. 2009   #5
-
0
-

To Anonymní uživatel :
toto asi nie asi by to ani nefunguvalo

Nahlásit jako SPAM
IP: 87.244.226.–
marioff0
Expert
6. 1. 2009   #6
-
0
-

$textZdb = "Tento notebook stoji v Bungistane 554€ a Turistane iba 489€, a u nas na Slovensku dokonca len 12199sk.";


if (preg_match_all("/([0-9]+)(sk|€){1}/", $textZdb, $vysledok)) {

$najdene = count($vysledok[0]);

for($i=0;$i<=$najdene;$i++) {
if ($vysledok[2][$i]=="sk") { $textZdb = str_replace($vysledok[0][$i], round($vysledok[1][$i] / 30.126, 2)."€ (".$vysledok[0][$i].")", $textZdb); }
if ($vysledok[2][$i]=="€") { $textZdb = str_replace($vysledok[0][$i], $vysledok[0][$i]." (".round($vysledok[1][$i] * 30.126, 2)."sk)", $textZdb); }
}

}

echo $textZdb;


VSTUP: Tento notebook stoji v Bungistane 554€ a Turistane iba 489€, a u nas na Slovensku dokonca len 12199sk.

VYSLEDOK: Tento notebook stoji v Bungistane 554€ (16689.8sk) a Turistane iba 489€ (14731.61sk), a u nas na Slovensku dokonca len 404.93€ (12199sk).

Hadam je to, co potrebujes......... ak nie uplne (lebo ani ja som ta nepochopil na 100 perc.) tak staci zmenit parametre str_replace... to uz nebude problem :)

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
netman920
Super člen
6. 1. 2009   #7
-
0
-

To marioff :
perfek to je ono dik moc

Nahlásit jako SPAM
IP: 87.244.226.–
dalaman0
Věrný člen
6. 1. 2009   #8
-
0
-

To marioff : wow.. pekne riesenie

Nahlásit jako SPAM
IP: 78.98.109.–
Lepšie je mať psa na saláme ako salámu pod psom !!!
netman920
Super člen
6. 1. 2009   #9
-
0
-
Nahlásit jako SPAM
IP: 87.244.226.–
marioff0
Expert
6. 1. 2009   #10
-
0
-

a co kontretne??

kukal som tu stranku... jedine co by to mohlo przdit je ta medzera po sume a pred €... dalej je to uz v texte dobre... definuj pls presne problem :)

To dalaman : snazil som sa hlavne aby to malo malo riadkov :)

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
netman920
Super člen
6. 1. 2009   #11
-
0
-

no ked je euro v stringu tak to neprepise ak je slovenksa koruna tak hej tie prve dve sumy su normalne vypisane ostatne som uz opravil a ide to
predtym to trochu blblo ale uz to je ok len este to euro na skk :-(

Nahlásit jako SPAM
IP: 87.244.226.–
netman920
Super člen
6. 1. 2009   #12
-
0
-

vyriesené....

problembol ze ja som pisal € tinyMCE /buduce admin rozhranie / generuje "&.euro;"

Nahlásit jako SPAM
IP: 87.244.226.–
marioff0
Expert
6. 1. 2009   #13
-
0
-

zabudol som na desatinne miesta... ak tak mozes este zmenit podmienku....

if (preg_match_all("/([0-9]+[\,]?[0-9]{0,2})(sk|€){1}/", $textZdb, $vysledok))


edit: no som rad ze ti to ide ;)

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
netman920
Super člen
6. 1. 2009   #14
-
0
-

dik prave som na to rpisiel aj sam ze mi to nejde
btw: odkial vies tak super reg vyrazy?

Nahlásit jako SPAM
IP: 87.244.226.–
marioff0
Expert
6. 1. 2009   #15
-
0
-

ani newiem... postupne som sa naucil podstatu jednotlivych "specialnych" znakov... a potom to ide same...
regularne vyrazy (aspon podla mna) vyriesia 99 perc. vsetkych problemov s textami ale aj napr. s kontrolou vstupnych dat atd.., jednoducho ich vyuzitie je takmer bez obmedzeni... odporucam nastudovat... ;)

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
netman920
Super člen
7. 1. 2009   #16
-
0
-

a ty si sa ucil podla akeho navodu?

Nahlásit jako SPAM
IP: 87.244.226.–
marioff0
Expert
7. 1. 2009   #17
-
0
-

ja osobne nejak navody neee... skor si najdem funkcny priklad a ten si postupne menim a kukam ze co to urobi.. (pokus-omyl)..
ale na nete sa da toho najst dost aj s prikladmi... nakolko ich vyuzijes asi v skoro kazdom prog jazyku.... teraz ma napada ze mozem napisat ja nejaky user-friendly navod :) tu na programujte....

Nahlásit jako SPAM
IP: 195.78.44.–
Škoda, že život sa nedá "sejvovať", tak že by som po zlom životnom rozhodnutí mohol začať odznova :([br] Lenivosť je matka pokroku.[br][br] http://cut.sk/ - odstrihni si dlhý link
tom*p0
Stálý člen
7. 1. 2009   #18
-
0
-

marioff: dobré řešení, co takto preg_replace_callback? (podle mě funkce stvořená pro věci jako tohle)

Nahlásit jako SPAM
IP: 83.240.120.–
Don't waste your time, or time will waste you.
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 45 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý