NFT 铸造交易合成平台系统开发丨智能合约部署

单价: 面议
发货期限: 自买家付款之日起 天内发货
所在地: 广东 广州
有效期至: 长期有效
发布时间: 2023-12-19 06:41
最后更新: 2023-12-19 06:41
浏览次数: 60
采购咨询:
让卖家联系我
发布企业资料
详细说明

在web3时代,基于***技术构建的开发181**2591技术3365案例Web3 网络不再由寡头控制(谷歌、meta等),而是由每个用户拥有。在由***底层技术搭建的web3网络中每个人就是这其中的一个节点,他们通过辅助**和维护网络等方式来获得所有权。

  pragma solidity^0.8.4;


  import' openzeppelin/contracts/token/ERC721/ERC721.sol';


  import' openzeppelin/contracts/access/Ownable.sol';


  //继承ERC721,Ownable


  contract SimpleMintContract is ERC721,Ownable{


  //mint价格


  uint256 public mintPrice=0.05 ether;


  //总共曾经被mint数量


  uint256 public totalSupply;


  //能够mint的*大数量


  uint256 public maxSupply;


  //是否开启mint


  bool public isMintEnabled;


  //每个地址mint=>数量


  mapping(address=>uint256)public mintedWallets;


  //构造函数,部署合约的时候,设置*大数量为2


  constructor()payable ERC721('Simple Mint','SIMPLEMINT'){


  maxSupply=2;


  }


  //内部调用函数,开启mint


  function toggleIsMintEnabled()external onlyOwner{


  isMintEnabled=!isMintEnabled;


  }


  //设置*大mint数量


  function setMaxSuppley(uint256 _maxSupply)external onlyOwner{


  maxSupply=_maxSupply;


  }


  //mint函数


  function mint()external payable{


  //require判断函数,前半部判断为false,则抛出后半局部信息


  //判断是否开启mint


  require(isMintEnabled,'minting not enabled');


  //判断地址是否曾经mint


  require(mintedWallets[msg.sender]<1,'exceeds max per wallet');


  //判断发送到合约的eth数量是否跟mint价格一样


  require(msg.value==mintPrice,'wrong value');


  //判断是否还有能够mint的数量


  require(maxSupply>totalSupply,'sold out');


  mintedWallets[msg.sender]++;


  totalSupply++;


  uint256 tokenId=totalSupply;


  _safeMint(msg.sender,tokenId);


  }


  }


技术上来讲,谁拥有这个服务器,谁还能更改这张图片,所以你必须要知道你买来的NFT其实只是一串放在某个服务器上的代码,这个代码被赋予了某张图片音频或者视频,你也必须知道这个服务器可以被更改,这个图片音频或者视频可以被更改,你只是在***上拥有了这小串代码,你没有这个服务器的管理权,也没有这张图片的管理权,你只是拥有了一串指向这个服务器的代码,而这串代码被赋予了一张图片。


相关平台系统产品
相关平台系统产品
相关产品