جستجو برای:
سبد خرید 0
  • آخرین دوره های آموزشی
  • درخواست پروژه
  • مقالات بلاکچین
  • تماس با ما

ورود

گذرواژه خود را فراموش کرده اید؟

ثبت نام

داده های شخصی شما برای پشتیبانی از تجربه شما در این وب سایت، برای مدیریت دسترسی به حساب کاربری شما و برای اهداف دیگری که در سیاست حفظ حریم خصوصی ما شرح داده می شود مورد استفاده قرار می گیرد.

  • 09395149363
  • info@fara-zaman.ir
  • لیست علاقه مندی ها
0
فرازمان | آکادمی بلاکچین
  • آخرین دوره های آموزشیداغ
  • درخواست پروژه
  • مقالات بلاکچینجدید
  • تماس با ما
آخرین اطلاعیه ها
جهت نمایش اطلاعیه باید وارد سایت شوید
شروع کنید

وبلاگ

فرازمان | آکادمی بلاکچیناخبارآموزش برنامه نویسی سالیدیتیتوابع Payableدر قراردادهای هوشمند Solidity

توابع Payableدر قراردادهای هوشمند Solidity

7 خرداد 1401
ارسال شده توسط مریم طاهری
آموزش برنامه نویسی سالیدیتی
توابع Payableدر قراردادهای هوشمند Solidity

توابع Payableدر قراردادهای هوشمند Solidity مکانیزمی برای دریافت وجوه شما می باشد. این توابع با کلمه کلیدی قابل پرداخت(Payable) حاشیه نویسی می شوند.

موارد زیر را در نظر داشته باشید:

1- برای ارسال و دریافت اتر از کلمه کلیدی قابل پرداخت(Payable) در متغیر تابع یا حالت استفاده کنید.

2- برای انصراف از قرارداد، کلمه کلیدی قابل پرداخت(Payable) را در متغیر حالت قرار دهید.

3- کلمه کلیدی قابل پرداخت(Payable) را در سازنده وارد کنید تا بتوانید هنگام ایجاد/استقرار قرارداد در قرارداد واریز کنید.

  • constructor() public payable;
  • دکمه Deploy در ریمیکس قرمز خواهد بود زیرا می توانیم هنگام استقرار اتر اضافه کنیم.

4- کلمه کلیدی قابل پرداخت(Payable) را در یک تابع قرار دهید تا امکان سپرده گذاری در قرارداد فراهم شود

  • تابع سپرده() قابل پرداخت عمومی {}

در زیر یک مثال ساده از قراردادی است که دارای یک تابع قابل پرداخت(Payable) است. تنظیم این تابع روی قابل پرداخت به قرارداد دیگری اجازه می دهد تا آن را فراخوانی و اتر ارسال کند. این را در ریمیکس تست کنید.

				
					pragma solidity ^0.7.0;

//sample contract is called payableSample
contract  payableSample {
    
    uint amount =0;
    

    //payable is added to this function so another contract can call it and send ether to this contract
    function payMeMoney() public payable{
        amount += msg.value;
    }
}
				
			

در مثال زیر ما متغیرها و توابع را روی قابل پرداخت(Payable) قرار می دهیم. اگر آدرس را قابل پرداخت نمی کردیم، انتقال به to.transfer کار نمی کرد. 

				
					pragma solidity ^0.7.0;

contract  payableSample {

    //add the keyword payable to the state variable
    address payable public Owner;
    

    //set the owner to the msg.sender
    constructor () public {
        Owner = msg.sender; 
    }
    

    //create a modifier that the msg.sender must be the owner
    modifier onlyOwner() {
        require(msg.sender == Owner, 'Not owner');
        _;
    }
    

    //the owner can withdraw from the contract because payable was added to the state variable above
    function withdraw (uint _amount) public onlyOwner {
        Owner.transfer(_amount); 
    }
    

    //to.transfer works because we made the address above payable.
    function transfer(address payable _to, uint _amount) public onlyOwner {
        _to.transfer(_amount); //to.transfer works because we made the address above payable.
    }
}

				
			
دوره ها و آموزش های فرازمان

در صورتی‌ که تجربه خاصی در خصوص برنامه‌نویسی ندارید می‌توانید از دوره‌های رایگان سایت ما “فرازمان“، استفاده کنید. همچنین اگر به دوره‌های پیشرفته‌تری در این خصوص نیاز داشته باشید، ما با آموزش های حرفه ای که در سایتمان قرار دادیم می توانید به سطح دلخواهتان با تلاش و پشتکار برسید.

نقشه راه

راهنما آکادمی فرازمان

برای یادگیری برنامه نویسی بلاکچین…

دوره مفاهیم پایه برنامه نویسی
دوره جامع جاوا اسکریپت و جی کوئری
آموزش برنامه نویسی سالیدیتی
دوره جامع html/css/bootstap
آموزش پیشرفته برنامه نویسی بلاکچین
آموزش Whitepaper نویسی برای پروژه های بلاکچینی

در این باره بیشتر بخوانید

ساختار(Struct) در قراردادهای هوشمند Solidity

Enum در قراردادهای هوشمند Solidity

mapping در قرارداد هوشمند Solidity

آرایه(Array) در قرارداد هوشمند Solidity

حلقه For در یک قرارداد هوشمند Solidity

برچسب ها: توابع Payableدر قراردادهای هوشمند Solidityآموزش برنامه نویسی سالیدیتیآموزش سالیدیتیتوابع Payable
جدیدتر ساختار(Struct) در قراردادهای هوشمند Solidity
قبلی استفاده از Import در قراردادهای هوشمند Solidity

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
برچسب‌ها
function nft آموزش برنامه نویسی سالیدیتی آموزش بلاکچین آموزش سالیدیتی اتریوم اخبار بازی اخبار رمز ارز اخبار کریپتو امنیت قرارداد هوشمند ان اف تی اکتیویژن ایلان ماسک بازی بلاکچین برنامه نویسی بلاک چین برنامه نویسی سالیدیتی بلاک چین بیتکوین بیت کوین تحلیل بیت کوین تسلا توابع توابع در سالیدیتی جاوا اسکریپت حسابرسی در قرارداد هوشمند خبر بلاکچین دسنترالند دوج کوین رمزارز سالیدیتی سرمایه گذاری سندباکس قرارداد هوشمند مایکروسافت متاورس مقاله بلاکچین مقاله کریپتویی موزیلا نمونه قرارداد هوشمند سالیدیتی وب3 پی پال کریپتو کسب درامد کیف پول اتریوم کیف پول بلاکچین
  • محبوب
  • جدید
  • دیدگاه ها
دسته‌ها
  • آموزش برنامه نویسی سالیدیتی
  • اتریوم
  • اخبار NFT
  • اخبار متاورس
  • امور مالی غیرمتمرکز
  • برنامه نویسی سالیدیتی
  • بیت کوین
  • سولانا
  • صرافی غیرمتمرکز
  • قرارداد هوشمند
  • کریپتو
  • کیف پول ارز دیجیتال
  • مقالات بلاکچین
  • مقاله
  • نمونه قراردادهای هوشمند سالیدیتی
 فـرا زمان با بهره گیری از دانش روز دنیا و توانایی در آموزش، مشاوره و پیاده سازی انواع پروژه های بلاکچینی پا به عرصه ی رقابت گذاشته و هر روز به گروه و تخصص خود می افزاید.
دسترسی سریع
  • خانه
  • دوره ها
  • اخبار
  • تماس با ما
  • ساری، ابتدای خیابان 15 خرداد،مجتمع بهار،طبقه اول
  • 09395149363
  • info@fara-zaman.ir
خبرنامه

چیزی را از دست ندهید، ثبت نام کنید و در مورد شرکت ما مطلع باشید.

نماد ها

logo-samandehi
© 1400. آکادمی فرازمان - طراحی فرازمان
اشتراک گذاری در شبکه های اجتماعی
ارسال به ایمیل
https://fara-zaman.ir/?p=12257
دسته بندی دوره ها
دوره های من
دسته بندی دوره ها

طراحی وب

  • 1 دوره

WhitePaper

  • 1 محصول

برنامه نویسی اتریوم (سالیدیتی)

  • 4 محصول

کلاس مجازی

  • 1 دوره
دوره های من
برای مشاهده خریدهای خود باید وارد حساب کاربری خود شوید
Twitter Youtube Instagram
مرورگر شما از HTML5 پشتیبانی نمی کند.

سوالی دارید؟ از ما بپرسید، کارشناسان ما در اسرع وقت با شما تماس می گیرند.

گروه تخصصی برنامه نویسی
  • 09395149363
  • پشتیبانی آنلاین
  • 09395149363