Token-Vertrag - Fehler in der Transaktion

Ich habe Ethereum-Token zum Testen im Ropsten-Netzwerk verwendet, wenn ich versuche, einen Token zu kaufen, gibt es einen Fehler in der Transaktion: https://ropsten.etherscan.io/tx/0x14b75395c6db502172dc7e6fddda0fc4c319e4e9cbdbfa39ae4c16c68c99367f

Vertragsquelle ist hier - https://ropsten.etherscan.io/address/0x944d80528b1669119bfc635aea0f088f1697dc63#code

Wie beheben?

Antworten (1)

Sie haben 0,2 Ether an diesen Vertrag gesendet, aber der Vertragscode sagt:

// ------------------------------------------------------------------------
// Don't accept ETH
// ------------------------------------------------------------------------
function () public payable {
    revert();
}

Die Transaktion wurde rückgängig gemacht, da der Vertrag keinen Ether akzeptiert.

danke, aber das Problem ist nicht gelöst, ich bekomme den gleichen Fehler im neuen Vertrag ohne diesen Teil des Codes: ropsten.etherscan.io/tx/…
Die Standardeinstellung für einen Vertrag ist, keinen Ether zu akzeptieren. Wenn Sie möchten, dass der Vertrag Ether akzeptiert, müssen Sie eine kostenpflichtige Funktion schreiben, die nicht zurückgesetzt wird. Z.Bfunction () public payable { /* do something here */ }
Können Sie mir schicken, was genau zum Code hinzugefügt wird? Ich weiß nicht. Was genau schreiben Sie "hier etwas tun", damit es funktioniert?
Ich weiß nicht, was du mit deinem Code machen willst. Du bist derjenige, der es schreibt.
In Ordnung, ich habe hier einen neuen Smart Contract erstellt: ropsten.etherscan.io/address/… Ich habe hier fehlgeschlagene Transaktionen behoben. Aber was ich tun muss - wenn ich etwas Ethereum sende, möchte ich ein Token bekommen. Und wie Sie sehen können, als ich 0,2 Ethereum gesendet habe, habe ich keinen Token erhalten und Token haben immer noch nur den Besitzer.
Ich glaube, diese Frage ist beantwortet.