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

Kako da iskoristim printf()

[es] :: PHP :: Kako da iskoristim printf()

[ Pregleda: 1753 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

meduljak

Član broj: 24045
Poruke: 63
*.paleol.net.

Sajt: www.infopanel.co.ba


Profil

icon Kako da iskoristim printf()15.03.2007. u 21:19 - pre 208 meseci
Baza se svaka dva dana kompletno brise, i ponovo pravi, i to radim preko ODBC drajvera iz accessa. Cini mi se da je to jedina varijanta posto nemam pravo da koristim LOAD (LOCAL) DATA INTO. Mislim da bi trebalo da radi i ako .tx fajl propustim kroz skriptu koja bi rasparcala niz, pa da onda importujem podatke u bazu, ali, o tom potom.

1. Problem: ispisujem niz koji sadrzi i rijeci i brojeve.
Code:

   $brojac=1;
while ($line = mysql_fetch_array($result, MYSQL_ASSOC))
{
if ($brojac%2!=0) $boja='#ffffff'; else $boja='#E4E4E4';
print "\t<tr>\n";
foreach ($line as $col_value)
{
print "\t\t<td class=bg bgcolor=".$boja.">
<b> <div align=center><font face=verdana size=1.5 color=#CC3333>$col_value </td>\n";
}
print "\t</tr>\n";
$brojac++;
}
print "</table>\n"; 

Treba da zaokruzim brojeve tako da ih uvijek ispisujem sa dvije decimale, cak i kad je vrijednost nula, a tekst da ostane kako i jeste (float da predje na float (4,2), a char i varchar da se ne mijenja).


2. Probao sam i da napravim tabelu u html, pa da posebno ispisujem vrijednost svake promjenjive, sto bi mi vise odgovaralo jer bih mogao da zasebno formatiram svaku celiju, i da koristim printf, recimo,
Code:
printf("%.2f\n", "$neka_prom");
ali imam drugi problem: sta ako mi promjenjiva, pocinje sa brojem!? OK, ne moze pocinjati, ali ja dobijem bazu u accessu u kojoj je tako definisana. U upitu stavim obrnute navodnike i to radi, recimo:
Code:
 $query = 'SELECT `1-1`, `2-1`, ...

Probao sam na http://www.php.net/manual/en/language.variables.php nesto sa {}, ali mi ne funkcionise

Infopanel...integrate yourself
www.infopanel.co.ba | www.dineco.co.ba
 
Odgovor na temu

Mali Misha
Mihajlo Anđelković
NBGD

Član broj: 79396
Poruke: 379
89.190.198.*

ICQ: 195487525
Sajt: cpptea.com


+1 Profil

icon Re: Kako da iskoristim printf()15.03.2007. u 22:04 - pre 208 meseci
Mala napomena ako može: decimale su "ono" sa desne strane decimalnog zareza. Ono što te interesuje se može nazvati "cifre".

1) Evo probaj ovako nešto: printf("%02X",0);
Ipak se ++uje.
 
Odgovor na temu

meduljak

Član broj: 24045
Poruke: 63
*.teol.net.

Sajt: www.infopanel.co.ba


Profil

icon Re: Kako da iskoristim printf()16.03.2007. u 15:15 - pre 208 meseci
Citat:
Mali Misha: Mala napomena ako može: decimale su "ono" sa desne strane decimalnog zareza. Ono što te interesuje se može nazvati "cifre".

:-)
Na decimale sam i mislio, tj "ono" sa desne strane zareza ;-), znaci da mi se npr. broj 2 ispisuje kao 2,00, ili 2,2 da se ispisuje kao 2,20, ili 2,123456 da se ispise kao 2,21,...isto tako da se 0 ispisuje kao 0,00.

Citat:

1) Evo probaj ovako nešto: printf("%02X",0);

Rjesava li se problem posto su neka polja textualnog tipa? Ispisujem tabele iz jedne sportske kladionice: liga, vrijeme odigravanja, domacin, gost, pa kvote, otprilike tako ide. Kvote hocu da mi ispisuje u gore pominjanom obliku, cijeli broj sa dvije decimale.

Kako da ugradim printf u onaj dio koda sa pocetka prvog posta?

Infopanel...integrate yourself
www.infopanel.co.ba | www.dineco.co.ba
 
Odgovor na temu

Mali Misha
Mihajlo Anđelković
NBGD

Član broj: 79396
Poruke: 379
62.44.101.*

ICQ: 195487525
Sajt: cpptea.com


+1 Profil

icon Re: Kako da iskoristim printf()16.03.2007. u 17:40 - pre 208 meseci
Citat:
meduljak: :-)
Na decimale sam i mislio, tj "ono" sa desne strane zareza ;-), znaci da mi se npr. broj 2 ispisuje kao 2,00, ili 2,2 da se ispisuje kao 2,20, ili 2,123456 da se ispise kao 2,21,...isto tako da se 0 ispisuje kao 0,00.

Pa zar ti %.2f ne resava posao? (meni da)
Upotrebio si ga u prvom postu pa je za pretpostaviti da si probao..
Ipak se ++uje.
 
Odgovor na temu

meduljak

Član broj: 24045
Poruke: 63
*.paleol.net.

Sajt: www.infopanel.co.ba


Profil

icon Re: Kako da iskoristim printf()18.03.2007. u 10:59 - pre 208 meseci
Ubacio sam printf na ovaj nacin:
Code:
...<div align=center><font face=verdana size=2 color=#CC3333>"?> <?php printf("%.2f","$col_value"); ?> <?php print "</td>\n";


Ostao mi je problem kako da prve cetiri kolone gdje su mi sadrzani tekstualni podaci budu preskoceni od ovog formatiranja, jer mi sad i njih ispisuje kao brojeve?

citat
Rjesava li se problem posto su neka polja textualnog tipa? Ispisujem tabele iz jedne sportske kladionice: liga, vrijeme odigravanja, domacin, gost, pa kvote, otprilike tako ide. Kvote hocu da mi ispisuje u gore pominjanom obliku, cijeli broj sa dvije decimale.

[Ovu poruku je menjao meduljak dana 18.03.2007. u 17:50 GMT+1]
Infopanel...integrate yourself
www.infopanel.co.ba | www.dineco.co.ba
 
Odgovor na temu

meduljak

Član broj: 24045
Poruke: 63
*.paleol.net.

Sajt: www.infopanel.co.ba


Profil

icon Re: Kako da iskoristim printf()19.03.2007. u 22:25 - pre 208 meseci
Evo kako izgleda kod. Ako ko ima vremena nek pogleda.
Code:
$brojac=1;
while ($line = mysql_fetch_array($result, MYSQL_ASSOC))
{
if ($brojac%2!=0) $boja='#ffffff'; else $boja='#E4E4E4';
print "\t<tr>\n";

foreach ($line as $col_value)

{
print "\t\t<td class=bg bgcolor=".$boja.">
<b> "?>
<?php printf("%.2f","$col_value");?>  <?php print "</td>\n";
}
print "\t</tr>\n";
$brojac++;
}
print "</table>\n";

Ovo izbaci sve kao brojeve, lijepo formatirane :-).

Da li neka petlja rjesava problem, da prve cetiri kolone ispisujem sa print, a ostale sa printf? Kako bi izgledala ta petlja
Infopanel...integrate yourself
www.infopanel.co.ba | www.dineco.co.ba
 
Odgovor na temu

meduljak

Član broj: 24045
Poruke: 63
*.teol.net.

Sajt: www.infopanel.co.ba


Profil

icon Re: Kako da iskoristim printf()20.03.2007. u 14:48 - pre 208 meseci
Je li ima iko voljan da se ukljuci?
Pretpostavljam da je i pitanje i odgovor nekom jednostavno i da ce vjerovatno mnogi pomisliti da bih trebao da vise procavam php manual i sl, ali nemam puno vremena, pa zato i molim za pomoc.

I hvala jos jednom,
Infopanel...integrate yourself
www.infopanel.co.ba | www.dineco.co.ba
 
Odgovor na temu

Miroslav Ćurčić
ex mVeliki
Novi Sad

Član broj: 19034
Poruke: 1118
*.dynamic.sbb.co.yu.



+19 Profil

icon Re: Kako da iskoristim printf()20.03.2007. u 19:51 - pre 208 meseci
Ako nemaš mnogo kolona, do 6 recimo, lakše je da se maneš te foreach petlje pa da svaku kolonu lepo ispišeš sa svojim <td>-om i svojim formatiranjem,

a ako ima više onda:
Code:

foreach ($line as $kljuc=>$col_value) {
  $vrednost= ($kljuc<4) ? $col_value : sprintf("%.2f","$col_value");
  .
  .
  .
  <?php echo $vrednost;?>
  .

"The quieter you become, the more you are able to hear."
Blog | PowerCMS
 
Odgovor na temu

[es] :: PHP :: Kako da iskoristim printf()

[ Pregleda: 1753 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

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