Autor Zpráva
Danecekk
Profil *
Zdravim Vas,

rad bych se zeptal, mam v MySQL policko cena (VARCHAR 255). Potreboval bych delat vyhledavani v tomto policku tak, ze mi bude radit MySQL pouze podle cisla. Chtel bych vyhledavat takto. V aplikaci mam cenik kde jsou uváděny hodnoty jako (dohodou, po telefonu,... - mohou se měnit jakkoli). V políčcích jsou taky ceny kde jsou formáty jako 200 Kč, 200 000, 200.000 apod. Existuje způsob jak pomocí PHP ošetřit přidávání čísel do tabulky tak bude např. 200 000 zjistí, že se jedná o cenu 200000 popř. cena 20,50 zjistí, že je to cena 20,50 a přidá je v tomto formátu bez mezer a symbolů, které k číslům nepatří?? Pokud zde někdo vloží např. 200 Kč zruší se text Kč. Pokud tedy přidá jakkoli text zůstane nezměněn. Díky za případnou radu i když jsou to napsal trochu chaoticky, samozřejmě jsem otevřel diskuzi, takže kdyby někdo něco nechápal, rád se vyjádřím :-). Dan
ShiraNai7
Profil
Tento kód zpracuje zadanou cenu způsobem, jak si chtěl. Pokud cena začíná číslem, zpracuje ji jako číslo - odstraní mezery, čárky převede na tečky a celé zadání na typ float. Pokud začíná písmenem, neudělá nic - ponechá zadaný text.

//kod na zpracovani ceny
$cena=trim($cena);
$prvni_znak=ord(substr($cena, 0, 1));

   //zpracovani cisla, pokud cena zacina cislem
   if($prvni_znak>47 and $prvni_znak<57){
   $cena=(float)str_replace(array(' ', ','), array('', '.'), $cena);
   }
Danecekk
Profil *
ShiraNai7

Díky, to byla rychlost. Vyzkouším a dám vědět :-)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: