How can i implement deadlines in smartContract?












1















Suppose I am running a gallery and ask participants to submit there paintings before a specific date. After passing that date participant should not be able to submit their entry. How can I implement such functionality?










share|improve this question









New contributor




Divansh Sachdeva is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.

























    1















    Suppose I am running a gallery and ask participants to submit there paintings before a specific date. After passing that date participant should not be able to submit their entry. How can I implement such functionality?










    share|improve this question









    New contributor




    Divansh Sachdeva is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.























      1












      1








      1








      Suppose I am running a gallery and ask participants to submit there paintings before a specific date. After passing that date participant should not be able to submit their entry. How can I implement such functionality?










      share|improve this question









      New contributor




      Divansh Sachdeva is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.












      Suppose I am running a gallery and ask participants to submit there paintings before a specific date. After passing that date participant should not be able to submit their entry. How can I implement such functionality?







      solidity contract-development blockchain blocks timestamp






      share|improve this question









      New contributor




      Divansh Sachdeva is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question









      New contributor




      Divansh Sachdeva is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question








      edited yesterday









      shane

      1,8014730




      1,8014730






      New contributor




      Divansh Sachdeva is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked yesterday









      Divansh SachdevaDivansh Sachdeva

      91




      91




      New contributor




      Divansh Sachdeva is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      Divansh Sachdeva is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      Divansh Sachdeva is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






















          1 Answer
          1






          active

          oldest

          votes


















          3














          There are two ways to do this:



          1) Limit the deadline by the block number.



          require(block.number < 7169670); // Where 7169670 is a block number.


          2) Limit the deadline by the current timestamp.



          require(now < 1549219795);  // Where 1549219795 is the current unix timestamp.


          There are advantages for both. It is not recommended to use block.number for checks that are in a long time, as there is variance in timing of blocks and other factors such as the ice age.



          now is preferred, as it is generally more accurate. With each mined block, miners include a timestamp of the current time. There are rules which limit their ability to manipulate this time (for example, it cannot be prior to the previous block's timestamp, nor can it be too much longer than it).






          share|improve this answer























            Your Answer








            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "642"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });






            Divansh Sachdeva is a new contributor. Be nice, and check out our Code of Conduct.










            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fethereum.stackexchange.com%2fquestions%2f66579%2fhow-can-i-implement-deadlines-in-smartcontract%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            3














            There are two ways to do this:



            1) Limit the deadline by the block number.



            require(block.number < 7169670); // Where 7169670 is a block number.


            2) Limit the deadline by the current timestamp.



            require(now < 1549219795);  // Where 1549219795 is the current unix timestamp.


            There are advantages for both. It is not recommended to use block.number for checks that are in a long time, as there is variance in timing of blocks and other factors such as the ice age.



            now is preferred, as it is generally more accurate. With each mined block, miners include a timestamp of the current time. There are rules which limit their ability to manipulate this time (for example, it cannot be prior to the previous block's timestamp, nor can it be too much longer than it).






            share|improve this answer




























              3














              There are two ways to do this:



              1) Limit the deadline by the block number.



              require(block.number < 7169670); // Where 7169670 is a block number.


              2) Limit the deadline by the current timestamp.



              require(now < 1549219795);  // Where 1549219795 is the current unix timestamp.


              There are advantages for both. It is not recommended to use block.number for checks that are in a long time, as there is variance in timing of blocks and other factors such as the ice age.



              now is preferred, as it is generally more accurate. With each mined block, miners include a timestamp of the current time. There are rules which limit their ability to manipulate this time (for example, it cannot be prior to the previous block's timestamp, nor can it be too much longer than it).






              share|improve this answer


























                3












                3








                3







                There are two ways to do this:



                1) Limit the deadline by the block number.



                require(block.number < 7169670); // Where 7169670 is a block number.


                2) Limit the deadline by the current timestamp.



                require(now < 1549219795);  // Where 1549219795 is the current unix timestamp.


                There are advantages for both. It is not recommended to use block.number for checks that are in a long time, as there is variance in timing of blocks and other factors such as the ice age.



                now is preferred, as it is generally more accurate. With each mined block, miners include a timestamp of the current time. There are rules which limit their ability to manipulate this time (for example, it cannot be prior to the previous block's timestamp, nor can it be too much longer than it).






                share|improve this answer













                There are two ways to do this:



                1) Limit the deadline by the block number.



                require(block.number < 7169670); // Where 7169670 is a block number.


                2) Limit the deadline by the current timestamp.



                require(now < 1549219795);  // Where 1549219795 is the current unix timestamp.


                There are advantages for both. It is not recommended to use block.number for checks that are in a long time, as there is variance in timing of blocks and other factors such as the ice age.



                now is preferred, as it is generally more accurate. With each mined block, miners include a timestamp of the current time. There are rules which limit their ability to manipulate this time (for example, it cannot be prior to the previous block's timestamp, nor can it be too much longer than it).







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered yesterday









                shaneshane

                1,8014730




                1,8014730






















                    Divansh Sachdeva is a new contributor. Be nice, and check out our Code of Conduct.










                    draft saved

                    draft discarded


















                    Divansh Sachdeva is a new contributor. Be nice, and check out our Code of Conduct.













                    Divansh Sachdeva is a new contributor. Be nice, and check out our Code of Conduct.












                    Divansh Sachdeva is a new contributor. Be nice, and check out our Code of Conduct.
















                    Thanks for contributing an answer to Ethereum Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fethereum.stackexchange.com%2fquestions%2f66579%2fhow-can-i-implement-deadlines-in-smartcontract%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown