Decimal number problem
Posted: Mon Nov 24, 2003 4:19 pm
Hi there,
PHP file that I send to You should do following: to clear of all needless characters from .TXT file and to form .HTML price-list.
Everything is now working properly except decimals that are alwayas showed like nulls (eg: 25,00 but it should be 25,67 ).
Please could you finish file for me?
Or if its easy, just tell me?
Thanks for your help,
Vladimir
/// USING PHP THIS PRICES.TXT FILE USE TO BE CLEANED FROM CHARACTERS LIKE THIS "ÄÄÄÄÄÄ------" AND IT SHOULD BE CONVERT TO "NICELOOKING" .HTML PRICE-LIST ///
utorak, 18. novembar 2003. godine
CENOVNIK za WEB - DIN
-------------------------------- -----------
ARTIKAL CENA
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Osnovne ploce
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
MBA Asus A7N8X-VM 400/8x/5.1/l 6.560,60
MBA Asus A7N8X-X nForce 4.731,54
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Procesori
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
CPU AMD XP 1700+ 3.015,47
CPU AMD XP 1800+ 3.100,22
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Cooleri
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
COOL HDD 2fan 282,48
COOL Speeze 5F273B1L3 564,96
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
---------------------------------------------
/// HERE IS PHP FILE ///
<?php
$cenovnikwidth = 680;
$artikalwidth = 480;
$pocetakvrste = 0;
$duzinavrste = 30;
$pocetakartikla = 0;
$duzinaartikla = 30;
$dodajpredartikal = " ";
$pocetakcene = 31;
$duzinacene = 20;
$dodajnacenu = " ";
$znak_decimale = ",";
$znak_separatora_hiljada = ".";
$broj_decimala = 2;
$izlaz_decimale = ",";
$izlaz_hiljada = ".";
$pocetakcenovnika = "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ";
$pocetakartikla = "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ";
$krajartikla = "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ";
$krajcenovnika = "---------------------------------------------";
$zamenista[1] = "Osnovne ploce";
$zamenisa[1] = "Matiène ploèe";
$zamenista[2] = "Cooleri";
$zamenisa[2] = "Kuleri";
?>
<html>
<head>
<title>PRICES</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
document.write("<SCR" + "IPT LANGUAGE='JavaScript' SRC='global.js' TYPE='text/javascript'><\/SCR" + "IPT>");
//-->
</SCRIPT>
<link href="cen.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#FFFFFF" topmargin="10" leftmargin="10">
<table width="<?=$cenovnikwidth?>" border="0" cellpadding="2" cellspacing="0" class="bordbrd01">
<?
$sadrzaj = file ("prices.txt");
$cenovnikpoceo = false;
$vrsta = false;
$artikal = false;
$prvavrsta = false;
$prviartikal = false;
while (list ($kljuc, $linija) = each ($sadrzaj)) {
$trenutnalinija = trim($linija);
if (strlen($trenutnalinija) == 0)
continue;
if ($trenutnalinija == $pocetakcenovnika) {
$vrsta = true;
$artikal = false;
$prvavrsta = true;
continue;
}
if ($trenutnalinija == $pocetakartikla) {
$artikal = true;
$prviartikal = true;
continue;
}
if ($trenutnalinija == $krajartikla) {
$vrsta = true;
$artikal = false;
$prvavrsta = false;
continue;
}
if ($trenutnalinija == $krajcenovnika) {
$vrsta = false;
$artikal = false;
continue;
}
if ($vrsta) {
foreach ($zamenista as $kljuc => $vrednost) {
if ($trenutnalinija == $vrednost)
$trenutnalinija = $zamenisa[$kljuc];
}
if ($prvavrsta) {
?>
<tr bgcolor=<?=$backcolorvrsta?>>
<td class="tblhead" width="<?=$artikalwidth?>" align="center"><?=trim(substr($trenutnalinija, $pocetakvrste, $duzinavrste))?></td>
<td class="tblhead"> </td>
</tr>
<?
}
else {
?>
<tr bgcolor=<?=$backcolorvrsta?>>
<td class="tblhead" width="<?=$artikalwidth?>" align="center"><?=trim(substr($trenutnalinija, $pocetakvrste, $duzinavrste))?></td>
<td class="tblhead"> </td>
</tr>
<?
}
$vrsta = false;
continue;
}
if ($artikal) {
foreach ($zamenista as $kljuc => $vrednost) {
if ($trenutnalinija == $vrednost)
$trenutnalinija = $zamenisa[$kljuc];
}
$trenutnilink = strtoupper(trim(substr($trenutnalinija, $pocetakartikla, $duzinaartikla)));
$trenutnilink = str_replace(" ", "_", $trenutnilink);
$trenutnilink = str_replace("/", "_", $trenutnilink);
$trenutnilink = $trenutnilink . ".htm";
if ($prviartikal) {
if (file_exists($trenutnilink)) {
?><tr onMouseOver="trOnMouseOver(this, false)" onMouseOut="trOnMouseOut(this)" onClick="popup('<?=$trenutnilink?>', 'TNT Artikal')"><?
}
else {
?><tr onMouseOver="trOnMouseOver(this, true)" onMouseOut="trOnMouseOut(this)"><?
}
?>
<td class="tbl" width="<?=$artikalwidth?>"><?=$dodajpredartikal . trim(substr($trenutnalinija, $pocetakartikla, $duzinaartikla))?></td>
<td class="tbl" align="right"><?=vrati_cenu(trim(substr($trenutnalinija, $pocetakcene, $duzinacene)), $znak_decimale, $znak_separatora_hiljada, $broj_decimala, $izlaz_decimale, $izlaz_hiljada) . $dodajnacenu?></td>
</tr>
<?
}
else {
if (file_exists($trenutnilink)) {
?><tr onMouseOver="trOnMouseOver(this)" onMouseOut="trOnMouseOut(this)" onClick="popup('<?=$trenutnilink?>', 'TNT Artikal')"><?
}
else {
?><tr onMouseOver="trOnMouseOver(this, true)" onMouseOut="trOnMouseOut(this)"><?
}
?>
<td class="tbl" width="<?=$artikalwidth?>"><?=$dodajpredartikal . trim(substr($trenutnalinija, $pocetakartikla, $duzinaartikla))?></td>
<td class="tbl" align="right"><?=vrati_cenu(trim(substr($trenutnalinija, $pocetakcene, $duzinacene)), $znak_decimale, $znak_separatora_hiljada, $broj_decimala, $izlaz_decimale, $izlaz_hiljada) . $dodajnacenu?></td>
</tr>
<?
}
$prviartikal = false;
continue;
}
}
?>
</table>
</body>
</html>
<?
function vrati_cenu($cena, $znak_decimale, $znak_separatora_hiljada, $broj_decimala, $izlaz_decimale, $izlaz_hiljada) {
$cena = str_replace ($znak_separatora_hiljada, "", $cena);
$cena = str_replace (" ", "", $cena);
$nova_cena = number_format($cena, $broj_decimala, $znak_decimale, $znak_separatora_hiljada);
$temp_char = "@";
$nova_cena = str_replace ($znak_separatora_hiljada, $temp_char, $nova_cena);
$nova_cena = str_replace ($znak_decimale, $izlaz_decimale, $nova_cena);
$nova_cena = str_replace ($temp_char, $izlaz_hiljada, $nova_cena);
return $nova_cena;
}
?>
PHP file that I send to You should do following: to clear of all needless characters from .TXT file and to form .HTML price-list.
Everything is now working properly except decimals that are alwayas showed like nulls (eg: 25,00 but it should be 25,67 ).
Please could you finish file for me?
Or if its easy, just tell me?
Thanks for your help,
Vladimir
/// USING PHP THIS PRICES.TXT FILE USE TO BE CLEANED FROM CHARACTERS LIKE THIS "ÄÄÄÄÄÄ------" AND IT SHOULD BE CONVERT TO "NICELOOKING" .HTML PRICE-LIST ///
utorak, 18. novembar 2003. godine
CENOVNIK za WEB - DIN
-------------------------------- -----------
ARTIKAL CENA
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Osnovne ploce
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
MBA Asus A7N8X-VM 400/8x/5.1/l 6.560,60
MBA Asus A7N8X-X nForce 4.731,54
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Procesori
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
CPU AMD XP 1700+ 3.015,47
CPU AMD XP 1800+ 3.100,22
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Cooleri
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
COOL HDD 2fan 282,48
COOL Speeze 5F273B1L3 564,96
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
---------------------------------------------
/// HERE IS PHP FILE ///
<?php
$cenovnikwidth = 680;
$artikalwidth = 480;
$pocetakvrste = 0;
$duzinavrste = 30;
$pocetakartikla = 0;
$duzinaartikla = 30;
$dodajpredartikal = " ";
$pocetakcene = 31;
$duzinacene = 20;
$dodajnacenu = " ";
$znak_decimale = ",";
$znak_separatora_hiljada = ".";
$broj_decimala = 2;
$izlaz_decimale = ",";
$izlaz_hiljada = ".";
$pocetakcenovnika = "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ";
$pocetakartikla = "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ";
$krajartikla = "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ";
$krajcenovnika = "---------------------------------------------";
$zamenista[1] = "Osnovne ploce";
$zamenisa[1] = "Matiène ploèe";
$zamenista[2] = "Cooleri";
$zamenisa[2] = "Kuleri";
?>
<html>
<head>
<title>PRICES</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
document.write("<SCR" + "IPT LANGUAGE='JavaScript' SRC='global.js' TYPE='text/javascript'><\/SCR" + "IPT>");
//-->
</SCRIPT>
<link href="cen.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#FFFFFF" topmargin="10" leftmargin="10">
<table width="<?=$cenovnikwidth?>" border="0" cellpadding="2" cellspacing="0" class="bordbrd01">
<?
$sadrzaj = file ("prices.txt");
$cenovnikpoceo = false;
$vrsta = false;
$artikal = false;
$prvavrsta = false;
$prviartikal = false;
while (list ($kljuc, $linija) = each ($sadrzaj)) {
$trenutnalinija = trim($linija);
if (strlen($trenutnalinija) == 0)
continue;
if ($trenutnalinija == $pocetakcenovnika) {
$vrsta = true;
$artikal = false;
$prvavrsta = true;
continue;
}
if ($trenutnalinija == $pocetakartikla) {
$artikal = true;
$prviartikal = true;
continue;
}
if ($trenutnalinija == $krajartikla) {
$vrsta = true;
$artikal = false;
$prvavrsta = false;
continue;
}
if ($trenutnalinija == $krajcenovnika) {
$vrsta = false;
$artikal = false;
continue;
}
if ($vrsta) {
foreach ($zamenista as $kljuc => $vrednost) {
if ($trenutnalinija == $vrednost)
$trenutnalinija = $zamenisa[$kljuc];
}
if ($prvavrsta) {
?>
<tr bgcolor=<?=$backcolorvrsta?>>
<td class="tblhead" width="<?=$artikalwidth?>" align="center"><?=trim(substr($trenutnalinija, $pocetakvrste, $duzinavrste))?></td>
<td class="tblhead"> </td>
</tr>
<?
}
else {
?>
<tr bgcolor=<?=$backcolorvrsta?>>
<td class="tblhead" width="<?=$artikalwidth?>" align="center"><?=trim(substr($trenutnalinija, $pocetakvrste, $duzinavrste))?></td>
<td class="tblhead"> </td>
</tr>
<?
}
$vrsta = false;
continue;
}
if ($artikal) {
foreach ($zamenista as $kljuc => $vrednost) {
if ($trenutnalinija == $vrednost)
$trenutnalinija = $zamenisa[$kljuc];
}
$trenutnilink = strtoupper(trim(substr($trenutnalinija, $pocetakartikla, $duzinaartikla)));
$trenutnilink = str_replace(" ", "_", $trenutnilink);
$trenutnilink = str_replace("/", "_", $trenutnilink);
$trenutnilink = $trenutnilink . ".htm";
if ($prviartikal) {
if (file_exists($trenutnilink)) {
?><tr onMouseOver="trOnMouseOver(this, false)" onMouseOut="trOnMouseOut(this)" onClick="popup('<?=$trenutnilink?>', 'TNT Artikal')"><?
}
else {
?><tr onMouseOver="trOnMouseOver(this, true)" onMouseOut="trOnMouseOut(this)"><?
}
?>
<td class="tbl" width="<?=$artikalwidth?>"><?=$dodajpredartikal . trim(substr($trenutnalinija, $pocetakartikla, $duzinaartikla))?></td>
<td class="tbl" align="right"><?=vrati_cenu(trim(substr($trenutnalinija, $pocetakcene, $duzinacene)), $znak_decimale, $znak_separatora_hiljada, $broj_decimala, $izlaz_decimale, $izlaz_hiljada) . $dodajnacenu?></td>
</tr>
<?
}
else {
if (file_exists($trenutnilink)) {
?><tr onMouseOver="trOnMouseOver(this)" onMouseOut="trOnMouseOut(this)" onClick="popup('<?=$trenutnilink?>', 'TNT Artikal')"><?
}
else {
?><tr onMouseOver="trOnMouseOver(this, true)" onMouseOut="trOnMouseOut(this)"><?
}
?>
<td class="tbl" width="<?=$artikalwidth?>"><?=$dodajpredartikal . trim(substr($trenutnalinija, $pocetakartikla, $duzinaartikla))?></td>
<td class="tbl" align="right"><?=vrati_cenu(trim(substr($trenutnalinija, $pocetakcene, $duzinacene)), $znak_decimale, $znak_separatora_hiljada, $broj_decimala, $izlaz_decimale, $izlaz_hiljada) . $dodajnacenu?></td>
</tr>
<?
}
$prviartikal = false;
continue;
}
}
?>
</table>
</body>
</html>
<?
function vrati_cenu($cena, $znak_decimale, $znak_separatora_hiljada, $broj_decimala, $izlaz_decimale, $izlaz_hiljada) {
$cena = str_replace ($znak_separatora_hiljada, "", $cena);
$cena = str_replace (" ", "", $cena);
$nova_cena = number_format($cena, $broj_decimala, $znak_decimale, $znak_separatora_hiljada);
$temp_char = "@";
$nova_cena = str_replace ($znak_separatora_hiljada, $temp_char, $nova_cena);
$nova_cena = str_replace ($znak_decimale, $izlaz_decimale, $nova_cena);
$nova_cena = str_replace ($temp_char, $izlaz_hiljada, $nova_cena);
return $nova_cena;
}
?>