@NoDeJs229

Как исправить ошибку в коде?

Я пишу бота.Мне надо сделать так что бы если пользователь покупает биткоины при этом если статус равен 1 то он купит а не продаст.А если статус равен 2 то продаст.Скрипт вроде правильный.Но у когда я покупаю биткоины то у меня в базе не 2,3,4 и тд биткоинов а '03,02,04'Что делать ?
cmd.hear(/^(?:)\s([0-9]+)$/i, async (message, bot) => {	
	if(!Number(message.args[1])) return;
	if(( message.args[1] * btc ) > message.user.balance) return bot(`недостаточно денег
Курс биткоина: ${btc}$`)
	if (message.user.sost1 == 1)return bot (`Вы купили ${message.args[1]} за ${utils.sp(message.args[1] * btc)}$`,
			message.user.nada += message.args[1],
			message.user.balance -= ( message.args[1] * btc ));	
		if (message.user.nada < message.args[1])return bot (`У вас нету столько биткоинов.`,
				{ 
		keyboard:JSON.stringify( 
		{ 
		"one_time": false, 
		"buttons": [ 
		[{ 
		"action": { 
		"type": "text", 
		"payload": "{\"button\": \"1\"}", 
		"label": ` У Вас нет биткоинов!` 
		}, 
		"color": "negative" 
		}], 
		[{ 
		"action": { 
		"type": "text", 
		"payload": "{}", 
		"label": `◀ К магазину` 
		}, 
		"color": "primary"
		}] 
	] 
	}) 
	});
    if (message.user.sost1 == 2)return bot (`Вы продали ${message.args[1]} за ${utils.sp(message.args[1] * btc)}$`);
		message.user.nada -= message.args[1];
		message.user.balance += ( message.args[1] * btc );
		 });
  • Вопрос задан
  • 53 просмотра
Пригласить эксперта
Ответы на вопрос 1
@dimoff66
Кратко о себе: Я есть
Сложно разбираться в вашем коде, но очевидно, что при занесении в базу числа вы прибавляете к строковой величине, равной строке "0". Поэтому надо проверить:
1) Место присвоения
2) Тип поля в базе.
3) Если с первым и вторым пунктами все окей, значит проверьте визуализацию, которая показывает вам числа в таком виде.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы