|
|
|
|
|
для: Artemy
(18.05.2005 в 14:23)
| | Выводите последовательно все переменные
<?php
echo $cat['price_rub'];
echo $price_rub/$usd;
?>
|
Так как мы запустить скрипт не можем (не все файлы) нужно выводить значения перменных, которые участвуют в формировании конечного значения. | |
|
|
|
|
|
|
|
для: Кузнецов М.В.
(17.05.2005 в 23:48)
| | Блин и у меня тоже...:-|
Этот код я привел просто как пример!
Если вам не сложно посмотрите вот ээтот настоящий код может там и есть ошибка о которой я даже и не знаю!
<?PHP
session_start();
if(isset($_GET['id_cat']) || !empty($_GET['id_cat'])) $id_cat = $_GET['id_cat'];
else $id_cat = "0";
if(!preg_match("|^[\d]+$|",$id_cat) && !empty($id_cat)) exit();
include "config.php";
$query = mysql_query("SELECT id, marka, model, description, country, garant, price_rub, price_usd, price_eur, review
FROM article
WHERE id_parent_cat = $id_cat
AND hide = 0");
if(!$query) puterror("Не удаеться вывести позиции каталога!");
include "skin/top.php";
include "functions.php";
echo "<a href='../catalog/' class='title'>Каталог</a>";
puttitle($id_cat," ", title);
echo "<br><br>";
include "course.php";
$usd = $curs[840];
$eur = $curs[978];
echo "<div align='right' style='font-size: 11px;'>Курс ЦБ РФ на ".date("d.m.Y").": 1 USD = $usd руб. <br>
1 EUR = $eur руб. </div><br><br>";
if(mysql_num_rows($query) > 0)
{
?>
<table width='595' border='0' cellspacing='2' cellpadding='2'>
<tr align='center' bgcolor='#009900' style=' color: #ffffff; font-size: 9 pt; font-weight: bold;'>
<td width="110" height="20" rowspan="2" bordercolor='#ccffcc' bgcolor="#009900">Наименование</td>
<td width="320" height="20" rowspan="2" bordercolor='#ccffcc' bgcolor="#009900">Характеристики</td>
<td width="50" rowspan="2" bordercolor='#ccffcc' bgcolor="#009900">Пр-во</td>
<td width="60" rowspan="2" bordercolor='#ccffcc'>Гарантия</td>
<td colspan="3" bordercolor='#ccffcc' bgcolor="#009900">Цена</td>
</tr>
<tr align='center' bgcolor='#009900' style=' color: #ffffff; font-size: 9 pt; font-weight: bold;'>
<td width="50" height="20" bordercolor='#ccffcc' bgcolor="#009900">RUB</td>
<td width="50" bordercolor='#ccffcc' bgcolor="#009900">USD</td>
<td width="50" bordercolor='#ccffcc' bgcolor="#009900">EUR</td>
</tr>
<?
while($cat = mysql_fetch_array($query))
{
if($cat['price_usd'] == "0" && $cat['price_eur'] == "0")
{
$price_rub = sprintf("%.2f",$cat['price_rub']);
$price_usd = sprintf("%.2f",$price_rub/$usd);
$price_eur = sprintf("%.2f",$price_rub/$eur);
}
if($cat['price_rub'] == "0" && $cat['price_eur'] == "0")
{
$price_usd = sprintf("%.2f",$cat['price_usd']);
$price_rub = sprintf("%.2f",$price_usd*$usd);
$price_eur = sprintf("%.2f",$price_rub/$eur);
}
if($cat['price_rub'] == "0" && $cat['price_usd'] == "0")
{
$price_eur = sprintf("%.2f",$cat['price_eur']);
$price_rub = sprintf("%.2f",$price_eur*$eur);
$price_usd = sprintf("%.2f",$price_rub/$usd);
}
echo "
<tr align='center' bordercolor='#009900' bgcolor='#ccffcc' style='font-size: 8 pt;'>
<td>"; if($cat['review'] == '+') echo "<a class='link' href='view.php?id_pos=".$cat['id']."'>"; else echo "<a class='link'>"; echo $cat['marka']." ".$cat['model']; if($cat['review'] == '+') echo "</a>"; echo "</td>
<td>".$cat['description']."</td>
<td>".$cat['country']."</td>
<td>".$cat['garant']."</td>
<td>$price_rub</td>
<td>$price_usd</td>
<td>$price_eur</td>
</tr>";
}
?>
</table>
<?
}
else echo "<div align='center' style=' color: red; font-weight: bold;'>К сожалению, в данном разделе каталога нет ни одной позиции!<br><a style=' font-size: 12px;'>Приносим Вам свои извинения, попробуйте зайти чуть позже!</a></div>";
?>
|
Файл course.php это код для выяснениния курса валют, я его взял на Вашем форуме, где то там внизу! | |
|
|
|
|
|
|
|
для: Artemy
(17.05.2005 в 20:29)
| | У меня тоже - 28034.50... | |
|
|
|
|
|
|
|
для: Artemy
(17.05.2005 в 20:29)
| | А версия PHP какая? Тестировал на PHP 5.0.4 под Windows выдал 28034,50. | |
|
|
|
|
|
|
|
для: Artemy
(17.05.2005 в 20:29)
| | а у меня выдало 28034,50! | |
|
|
|
|
|
|
| Добрый вечер, господа!
Пожалуйста, обьясните, почему после выполнения следующей операции
<?
$price = 1000;
$usd = 28.0345;
$price_usd = sprintf("%.2f",$price*$usd);
echo $price_usd;
?>
|
Выдаеться число 28000,00, а не 28034,50!
Заранее спасибо! | |
|
|
|
|