Difference between revisions of "Solidity ethereum Language"
Jump to navigation
Jump to search
Line 34: | Line 34: | ||
} | } | ||
==Bank account== | |||
pragma solidity ^0.4.0; | |||
contract BankAccount{ | |||
address client; | |||
bool _switch = false; | |||
// event will fire when called only workd in setters | |||
event UpdateStatus(string _msg, uint _amount); | |||
event test(string _msg2); | |||
// constructor | |||
function BankAccount(){ | |||
client = msg.sender; | |||
} | |||
// this will allow only the owner of the contrat to use | |||
/* | |||
so you create the modifier then add it to the functions that you want it to affect | |||
*/ | |||
modifier ifClient(){ | |||
if(msg.sender != client){ | |||
throw; | |||
} | |||
_; | |||
} | |||
function depositFunds() payable{ | |||
UpdateStatus("User has deposited", msg.value); | |||
test("funds deposited"); | |||
} | |||
function witdrawFunds(uint amount) ifClient{ | |||
// this returns a boolean | |||
if(client.send(amount)){ | |||
UpdateStatus("User has deposited ", 0); | |||
_switch = true; | |||
}else{ | |||
_switch = false; | |||
} | |||
} | |||
function getFunds() ifClient constant returns(uint) { | |||
return this.balance; | |||
} | |||
}// end contract |
Revision as of 21:56, 10 February 2018
Solidity Contract
pragma solidity ^0.4.0; contract HelloWorldContract{ string word = "Hello"; address public issuer; // constructor function HelloWorldContract(){ issuer = msg.sender; } modifier ifIssuer(){ if(issuer != msg.sender){ throw; } else{ _; // this means continue } } // creating a getter // the keyword constant is used to make it a getter without it the contract would // use gas and would be a setter function getWord() constant returns(string){ return word; } // setter function setWord(string newWord) returns(string){ word = newWord; return word; } }
Bank account
pragma solidity ^0.4.0; contract BankAccount{ address client; bool _switch = false; // event will fire when called only workd in setters event UpdateStatus(string _msg, uint _amount); event test(string _msg2); // constructor function BankAccount(){ client = msg.sender; } // this will allow only the owner of the contrat to use /* so you create the modifier then add it to the functions that you want it to affect */ modifier ifClient(){ if(msg.sender != client){ throw; } _; } function depositFunds() payable{ UpdateStatus("User has deposited", msg.value); test("funds deposited"); } function witdrawFunds(uint amount) ifClient{ // this returns a boolean if(client.send(amount)){ UpdateStatus("User has deposited ", 0); _switch = true; }else{ _switch = false; } } function getFunds() ifClient constant returns(uint) { return this.balance; } }// end contract