$sql = "UPDATE jos_scheta SET summa='.$ost' WHERE jos_scheta.id=".$uid; Человек покупает доллары, с его счета снимается определенная сумма и новая сумма заноситься в бд. У меня все время при попытке купить, заноситься в бд значение 0. Подскажите, мб я функционально неправильно написал запрос(обозначил переменную $OST)
$sql = "UPDATE jos_scheta SET summa='.$ost.' точку пропустили здесь или в коде тоже? и какой у вас тип данных поля?
И в коде тоже пропустил. Тип Float должен быть. Вроде ошибок не выдает, а покупаю и все равно значение 0 записывает( Функция: function soxp_summa($summa,$uid,$rub){ $ost = $summa - $rub; $sql = "UPDATE jos_scheta SET summa='.$ost.' WHERE jos_scheta.id=".$uid; mysql_query($sql) or die (mysql_error()); } это код в форме: <?php $www = mysql_fetch_array($result); $summa =$www['summa']; $rub = $name * $kyrs; soxp_summa($summa,$uid,$rub); ?> В БД summa float. Мне кажется в функции надо значение $ost прописать float.
просмотрел, кавычки-то разные у вас $sql = "UPDATE jos_scheta SET summa=".$ost." WHERE jos_scheta.id=".$uid;
Запрос в PHP заключаются в кавычки двух типов : 1. двойные "" 2. одинарные '' Значения, названия запросов в базе данных (Название базы, таблиц их значений) используют обратные кавычки `` клавиша [тильда] под клавишей [ESCAPE]. Код (PHP): $sql = "UPDATE `jos_scheta` SET `summa`=".$ost." WHERE `jos_scheta`.`id`=".$uid;