Я заключил умный договор на получение платежа, который затем выплачивается на 2 других адреса, деля общую полученную стоимость на 2 акции по 10% и 90% соответственно.Он должен использоваться на веб-сайте вместе с платным доступом.Я сделал это некоторое время назад, и это, кажется, работает (опубликовано в основной сети 6 месяцев назад, используется на этой странице: http://www.linebreakrecords.com/plaintext.php несерьезный магазин, я только учусь использовать блокчейн на сайтах).Однако используемый мной код является базовым и в некоторых местах устарел (когда я смотрю в Remix, теперь я получаю предупреждения о том, что не нужно использовать префиксы emit и «Потенциальное нарушение шаблона Checks-Effects-Interaction», а также «функцию отката»).требует слишком много газа (бесконечно) ».
Во-первых, я надеюсь на рекомендации о том, как сделать этот код более надежным / безопасным и совместимым с современной практикой.Во-вторых, я надеюсь на рекомендации о том, как сделать так, чтобы контракт принимал только транзакции выше определенной стоимости (например, 2 доллара) и отслеживал текущий обменный курс (чтобы я мог установить минимальное значение, подлежащее выплате до 2 долларов), и чтобы он следовал такому обменному курсу,он остается на уровне 2 доллара независимо от изменений на рынке).Я знаю, что это довольно простой материал, и код, который я даю здесь, вероятно, примитивный AF, я пытаюсь учиться на ходу, пожалуйста, помогите, если можете.Огромное спасибо.
pragma solidity ^0.4.15;
contract CONTRACT1{
event senderLogger(address);
event valueLogger(uint);
address person1Adress;
address person2Adress;
function () payable {
senderLogger(msg.sender);
valueLogger(msg.value);
person1Adress = 0x705b4e2d44be431740b11fa9ba6ace47bef8d035;
person1Adress.transfer(msg.value / 10);
person2Adress = 0xC0BB3c8362628E152f70b602de4B7CFB41516618;
person2Adress.transfer((msg.value / 10) * 9);
}
}