Kod
include ('conf.php');
global $HTTP_SESSION_VARS;
$haslo = $HTTP_POST_VARS['haslo_jednorazowe'];
$koszt = $HTTP_SESSION_VARS['calkowita_wartosc'];
$nr = $HTTP_SESSION_VARS['klient'];
@ $db = mysql_pconnect
if (!$db)
{
echo'Błąd: Połączenie z bazą danych nie powiodło się!';
exit;
}
mysql_select_db('xxx');
$zapytanie = mysql_query("select xxx from xxx where xx='$xx'");
$wynik = mysql_fetch_array($zapytanie);
$konto = number_format($wynik['saldo'], 2);
$saldo = sprintf("%.2f", floatval(str_replace("," , ".", $konto)));
$cena = sprintf("%.2f", floatval(str_replace("," , ".", $koszt)));
if ($cena>$saldo)
{
echo '<p align="center">Brak dostępnych środków na koncie<br>';
echo 'Przelew nie został zrealizowany</p>';
exit();
}
if (($cena=$saldo) || ($cena<$saldo))
{
$stan_konta = $saldo+$cena;
echo " stan konta - $stan_konta";
$stan_konta= strval ($stan_konta);
@ $db = mysql_pconnect('localhost','polkowic_bank','bank');
if (!$db)
{
echo'Błąd: Połączenie z bazą danych nie powiodło się!';
exit;
}
mysql_select_db('polkowic_bank');
$przelew = mysql_query(UPDATE);
$aktualizacja = mysql_fetch_array($wynik);
$aktualne_saldo = number_format($konto['saldo'], 2);
echo "aktualne konto - $aktualne_saldo";
echo'<p align="center">Dyspozycja została przyjęta';
echo '<br><a href="wyloguj.php"><b>Wyloguj</b></a></p>';
}
}
jak widzicie mam dwie zmienne $saldo i $konto.
$saldo jest pobrane z bazy danych (w bazie jest jako float), natomiast $konto jest pobrane z sesji, ale zanim trfiło do sesji było również pobrane z bazy.
Później próbowałem ustawić taki sam tym zmiennych używając: sprintf("%.2f", floatval(str_replace("," , ".", $konto))); tak gdzieś było na goglach.
Wszystko działa dopuki nie zacznę odejmować od siebie saldo i konto wtedy coś jest nie tak bo wynikiem jest 0.