Ořezání nul na začátku z dotazu na mysql – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Ořezání nul na začátku z dotazu na mysql – PHP – Fórum – Programujte.comOřezání nul na začátku z dotazu na mysql – PHP – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
pidgin0
Návštěvník
9. 8. 2008   #1
-
0
-

Ahoj, potřeboval bych trochu poradit. Mám databázovou proměnou int(10) (projistotu) a když spustím dotaz na databázi tak mi vrátí výsledek př.: 0000000220,- . Potřeboval bych ořezat ty nuly na začátku. Vím že by to šlo pomocí formátování řetězců, ale nechce se mi aby skript u každé ceny zjišťoval kdy je nula a kdy už může začít vypisovat čísla. A taky se mi nechce věřit že na to neexistuje žádná funkce, která by to dělala. Poradí mi někdo?

Nahlásit jako SPAM
IP: 85.207.240.–
Reklama
Reklama
bukaj0
Věrný člen
9. 8. 2008   #2
-
0
-

pidgin
Měla by to zvládat ltrim()[1]. Ale to vracení nul na začátku se mi nějak nezdá. Opravdu je ten sloupec číselný? Neprochází výsledky z databáze ještě nějaký preprocessingem, než je vypisuješ?

[1] http://php.net/ltrim

Nahlásit jako SPAM
IP: 85.70.13.–
Jak se správně ptát? -> http://www.hash.cz/inferno/otazky.html[br][br] Po programování je člověk hladovej.
Prog.0
Věrný člen
9. 8. 2008   #3
-
0
-

Odpoveď na otázku: www.php.net/intval

1. int(10) zožerie rovnako veľa pamäte ako int(1). Ide len o šírku stĺpca - o to, že na koľko pozícií sa má číslo vypísať, keď za zavolá.

2. celočíselné stĺpce majú vlastnosť zerofill, ktorú má tvoj stĺpec nastavenú na true - kôli tomu sa ti to číslo doplní nulami. zmeň ten stĺpec na zerofill=0 a máš po probléme,

3. tú funkciu intval použi aj tak (aj keď vykonáš bod 2) PHP totiž z databázy získané hodnoty chápe ako stringy, a niekedy je lepšie, keď mu to vysvetlíš ručne.

Nahlásit jako SPAM
IP: 87.244.219.–
Prog.
Wideman
~ Anonymní uživatel
7 příspěvků
9. 8. 2008   #4
-
0
-

Pochopil jsem z dotazu, že ty sám jsi tvůrce databáze a předpokládám, že to je MySQL. Proto při vytvoření databáze nenastavuj typ sloupce jako INT(10), ale jako INT. Ta desítka v závorce je prakticky k ničemu. Jediné co způsobuje je ten efekt, co jsi popsal, tedy doplnění čísla s méně než deseti číslicemi nulami ze zečátku, aby mělo deset číslic.

Nahlásit jako SPAM
IP: 213.29.196.–
pidgin0
Návštěvník
10. 8. 2008   #5
-
0
-

Děkuji moc všem za rady. Všechny jsou správné. Musím se ješt mnoho učit. Hlavně to int(10). díky moc

Nahlásit jako SPAM
IP: 213.220.209.–
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, 54 hostů

Podobná vlákna

Mysql CACHE dotazu — založil Pavelv

Hledání min (nul) — založil David2563

 

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