实况主的捐款合约
//SPDX-License-Identifier: GPL-3.0
pragma solidity ^0.8.17;
contract Donation {
address public owner;
mapping(address => uint256) donationList;
event Donate(address indexed sender, uint256 value);
event Withdraw(address indexed owner, uint256 value);
modifier onlyOwner() {
require(msg.sender == owner,"Only owner can access this function");
_;
}
constructor() {
//将合约的拥有者设定为建立合约的人
owner = msg.sender;
}
//收受捐款的函数
function donate() public payable {
donationList[msg.sender] += msg.value;
emit Donate(msg.sender, msg.value);
}
//查询捐款总金额
function getHistory() public view returns (uint256) {
return donati