Web Analytics Made Easy -
StatCounter My form needs a unique number on each load...can it be done? - CodingForum


No announcement yet.

My form needs a unique number on each load...can it be done?

  • Filter
  • Time
  • Show
Clear All
new posts

  • My form needs a unique number on each load...can it be done?

    I am creating a form for someone, and he says he needs a unique number for each submit that he gets...can this be done? Everything is done through JS...I have tried a couple of things, but I can't seem to get it to go...Does anyone have any ideas??

  • #2
    You'll need server-side to do this.


    • #3
      Here's an idea for ya...

      Here's something I was playing around with... since I use random randomness, and intersperse a date stamp as well, the odds against ever getting the same number twice are well... a lot higher than I can count!

      I'm sure they are astronomical...

      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
      <script language="JavaScript" type="text/javascript">
      function UniqueString(){
           var mydate = new Date;
           var myday = mydate.getDate();
           var mymonth = mydate.getMonth()+1;
           var myyear = ((mydate.getYear() < 100) ? "19" : "") + mydate.getYear();
           var myyear = myyear.substring(2,4);
           var myhour = mydate.getHours();
           var myminutes = mydate.getMinutes();
           var myseconds = mydate.getSeconds();
           if(myday < 10) myday = "0" + myday;
           if(mymonth < 10) mymonth = "0" + mymonth;
           if(myhour < 10) myhour = "0" + myhour;
           if(myminutes < 10) myminutes = "0" + myminutes;
           if(myseconds < 10) myseconds = "0" + myseconds;
           var datearray = new Array(mymonth,myday,myyear,myhour,myminutes,myseconds);
           var uniq = "";
                     var which = Math.round(Math.random()*1);
                          x = String.fromCharCode(64 + (Math.round(Math.random()*25)+1));
                          x = String.fromCharCode(47 + (Math.round(Math.random()*9)+1));
                     uniq += x;
                uniq += datearray[i];
      return uniq;
                     Random 24 character string with time factor!
      <script language="JavaScript" type="text/javascript">
           uniq = UniqueString();
           document.write(uniq+"<br />");
      // -->
      Former ASP Forum Moderator - I'm back!

      If you can teach yourself how to learn, you can learn anything. ;)


      • #4

        I will give this a try...thanks, you're a lifesaver!


        • #5
          How would i edit this form to generate a shorter unique number. I need a javascript to give a unique number to each person registering on a form of mine. THANKS!


          • #6
            It is not possible to generate numbers using JavaScript which are in any way sequential. And the shorter the number the greater the probability that a number will be duplicated.

            For example, a number based on hours - minutes - seconds would have 6 digits (e.g. 113542) but the chance of duplication would be quite high.

            You really do need a server-side language to do this. I expect you know that JavaScript has no ability to read from or write to a file (except a cookie).

            All the code given in this post has been tested and is intended to address the question asked.
            Unless stated otherwise it is not just a demonstration.