We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 45366
    • 45 Posts
    OK I'm not actually the developer so apologies if the terminology is off but;

    I'm getting a site done at the moment and part of it is having an area where someone can fill out an application form online as well as downloading the document to fill out...

    Although the person designing the site for me is a good friend he's being quite slow with it, I was just wondering how hard it actually was to do this?

    Basically it's an application form that has a few tables that he's had to create forms out of, bit I don't understand why he can't just copy paste the code for one form / table conversion and rename the headings?

    bit confusing, appreciate any thoughts though.
      • 22840
      • 1,572 Posts
      Would really depend on the content of each form and how it's laid out, how is it being built ? does it have validation ?, is every page different ?, is it a responsive layout ?

      Without more info it's hard to say, also when you say hes being slow how long has it taken ?, has it been changed since the original, theres a lot of things that can delay a process so the more info the better
        • 45366
        • 45 Posts
        Quote from: paulp at Oct 10, 2013, 05:26 PM
        Would really depend on the content of each form and how it's laid out, how is it being built ? does it have validation ?, is every page different ?, is it a responsive layout ?

        Without more info it's hard to say, also when you say hes being slow how long has it taken ?, has it been changed since the original, theres a lot of things that can delay a process so the more info the better

        Hey Paul -

        How is it being built - I'm not sure how it's being built (I'm guessing if I say 'code' that's pretty dumb!)

        Does it have validation - Again, not sure what you mean by validation, that the fields are restricted to certain imputes? (ie numeric / date / text etc)

        is every page different - well not within this part - there are different areas of the site but the area with the application form is pretty consistent.

        is it a responsive layout - if you resize the window the content moves about / shrinks...


        The thing is this guy get's caught up with thing's and I'm concerned that he's fallen into a bit of a whole and is trying to do something the long way / learn something as he goes rather than just copy pasting stuff and renaming...

        But the above message is proof of how much I know wink
          • 45366
          • 45 Posts
          OK so here's what I mean;

          He's converted a table so that you can input the fields on line rather than downloading the doc, filling it in then emailing it.

          One of the tables done is for previous positions, which was laid out in a work table (in the original document) like;

          (title) Previous Positions

          (columns)

          date from / to

          employer

          post held

          salary

          full time / part time

          reason for change


          He's made it so that all of this information can be input on-line (there's also a button you can click to add up to 5 previous positions)



          But I don't get why he can't just copy paste that code then change a few headers to make it so that it represented a different table?

          so you'd have another one, eg


          (title) qualifications and education

          (columns)

          Qualifications

          Subject

          School / College / University

          Grade level achieved

          Full time / Part time

          Period



          Is this possible?

          What he's done is really god but he has a tendency to get caught up in little thing's rather than finding the fastest / easiest solution to things....


          cheers














            • 3749
            • 24,544 Posts
            Sending a plain text form (or a .doc file) to users to fill out and return is *very* different from creating an online form.

            The online form has to be written in HTML code, which has very strict rules. One small typo and the form can look like garbage. CSS code determines what the form looks like, and again, any small mistakes will trash the form. If there is validation (like making sure a phone number is really a phone number, an email address is really an email address and any required fields have been filled in) that has to be done in PHP and/or JavaScript code that processes the form (in the case of PHP) or responds immediately to the user's actions (in the case of JavaScript). The PHP code also has to do something with the input from the form, which is stored in the $_POST array as just a set of field names and values. The PHP code also has to determine whether the form is just being displayed, or has been filled in and submitted.

            For example, take the very simple-looking form here: http://bobsguides.com/subscribe.html.


            The code below is just the HTML code for that form. In addition, the PHP code that processes the form is 173 lines long, there are 130 lines of CSS code, and 163 lines of JavaScript code.

            All of the code has to be not just created, but tested and rewritten many times to get the form to look and work exactly the way you want it to.

            <div class="register">
                <div class="registerMessage"></div>
            
                <form class="sbs_register_form" action="subscribe.html" method="post" onsubmit="return checkform(this); return false;">
                    <fieldset>
                    <input type="hidden" name="nospam" value="" />
                    <label for="username">Username:
                        
                    </label>
                    <input type="text" name="username" id="username" value="" /><span class="error"></span><br />
            
                    <label for="password">Password:
                        
                    </label>
                    <input type="password" name="password" id="password" value="" /><span class="error"></span><br />
            
                    <label for="password_confirm">Confirm Password:
                        
                    </label>
                    <input type="password" name="password_confirm" id="password_confirm" value="" /><span class="error"></span><br />
            
                    <label for="fullname">Full Name:
                        
                    </label>
                    <input type="text" name="fullname" id="fullname" value="" /><span class="error"></span><br />
            
                    <label for="email">Email:
                        
                    </label>
                    <input type="text" name="email" id="email" value="" /><span class="error"></span><br />
            
                        <br class="clear"/>
            
                        <p>Please keep me informed about new content in the following areas:</p>
                        <input type="checkbox" name="interests[]" value="modx"  />MODX<br /><input type="checkbox" name="interests[]" value="developer"  />Developer Resources<br /><input type="checkbox" name="interests[]" value="rv"  />RV<br /><input type="checkbox" name="interests[]" value="bread"  />Bread<br /><input type="checkbox" name="interests[]" value="language"  />Language<br /><input type="checkbox" name="interests[]" value="humor"  />Humor<br /><input type="checkbox" name="interests[]" value="stuff"  />Stuff you might want<br />
            
                        <br class="clear"/>
                        <br class="clear"/>
                    <br />
                    <div class="form-buttons">
                        <input type="submit" name="login-register-btn" value="Submit" />
                    </div>
                </fieldset>
                </form>
                <span id="sbs_js_lexicon" style="display:none">{"sbs_js_username_required":"Please enter a username","sbs_js_username_too_short":"Username must be at least 6 characters long","sbs_js_password_required":"Please enter a password","sbs_js_password_too_short":"Password must be at least 6 characters long","sbs_js_password_mismatch":"Password entries must match","sbs_js_email_required":"Please enter an email address","sbs_js_bad_email":"That doesn't look like a valid email address","sbs_js_fullname_required":"Please enter a full name","sbs_js_interests_required":"Please check at least one checkbox","sbs_js_groups_required":"Please check at least one group"}</span>
            </div>



            As you might guess, this all takes quite a bit of time. wink
              Did I help you? Buy me a beer
              Get my Book: MODX:The Official Guide
              MODX info for everyone: http://bobsguides.com/modx.html
              My MODX Extras
              Bob's Guides is now hosted at A2 MODX Hosting
              • 45366
              • 45 Posts
              Hi Bob, thanks for the reply...

              I thought that it'd be possible to just change headers I guess (once one's built)

              I have a question;

              I have access to admin the back end, and when I copy and paste one of the tables It works (there's a duplicate created on the front end) but the part that creates new entries for previous employment positions (theres a button you can press that will create another form that you can fill out, up to 5) instead of creating a new entry in the copied table it reverts back to the original table... Not sure why that is?

              here's the code:

               <h3>Present Position</h3>
                  <div class="row">
                      <div class="form-group col-sm-6">
                          <label for="c-date-from">Date From</label>
                          <input type="text" class="form-control" id="c-date-from" placeholder="Date from">
                      </div>
                      <div class="form-group col-sm-6">
                          <label for="c-date-to">Date To</label>
                          <input type="text" class="form-control" id="c-date-to" placeholder="Date to">
                      </div>
                  </div>
                  <div class="form-group">
                      <label for="c-employer">Employer</label>
                      <input type="text" class="form-control" id="c-employer" placeholder="Employer">
                  </div>
                  <div class="form-group">
                      <label for="c-position">Position</label>
                      <input type="text" class="form-control" id="c-position" placeholder="Position">
                  </div>
                  <div class="form-group">
                      <label for="c-salary">Salary</label>
                      <input type="text" class="form-control" id="c-salary" placeholder="Salary">
                  </div>
                  <div class="form-group">
                      <label for="c-full-part-time">Full/Part Time</label>
                      <select class="form-control" id="c-full-part-time">
                          <option value="Full Time">Full Time</option>
                          <option value="Part Time">Part Time</option>
                      </select>
                  </div>
                  <div class="form-group">
                      <label for="c-leaving-reason">Reason for Leaving</label>
                      <input type="text" class="form-control" id="c-leaving-reason" placeholder="Reason for leaving">
                  </div>
                  <hr>
                  <h3>Previous Position</h3>
                  <p>Paid or unpaid, including voluntary work please list all previous employment since leaving secondary education (most recent first) including part time and voluntary work. Hit the "Entry #1" title to open the form and "Add another" to add another past position.</p>
                  <div id="entry1" class="clonedInput">
                      <div class="panel-group" id="accordion">
                          <div class="panel panel-default">
                              <div class="panel-heading clearfix">
                                  <h4 class="panel-title pull-left">
                                      <a id="reference" class="heading-reference accordion-toggle" data-toggle="collapse" data-parent="#accordion" href="#collapseOne">
                                          Entry #1
                                      </a>
                                  </h4>
                              </div>
                              <div id="collapseOne" class="panel-collapse collapse">
                                  <div class="panel-body">
                                      <div class="row">
                                          <div class="form-group col-sm-6">
                                              <label class="p-date-from-title input-title" for="p-date-from">Date From</label>
                                              <input type="text" class="form-control" id="p-date-from" placeholder="Date from">
                                          </div>
                                          <div class="form-group col-sm-6">
                                              <label class="p-date-to-title input-title"  for="p-date-to">Date To</label>
                                              <input type="text" class="form-control" id="p-date-to" placeholder="Date to">
                                          </div>
                                      </div>
                                      <div class="form-group">
                                          <label class="p-employer-title input-title"  for="p-employer">Employer</label>
                                          <input type="text" class="form-control" id="p-employer" placeholder="Employer">
                                      </div>
                                      <div class="form-group">
                                          <label class="p-position-title input-title"  for="p-position">Position</label>
                                          <input type="text" class="form-control" id="p-position" placeholder="Position">
                                      </div>
                                      <div class="form-group">
                                          <label class="p-salary-title input-title"  for="p-salary">Salary</label>
                                          <input type="text" class="form-control" id="p-salary" placeholder="Salary">
                                      </div>
                                      <div class="form-group">
                                          <label class="p-full-part-time-title input-title"  for="p-full-part-time">Full/Part Time</label>
                                          <select class="form-control" id="p-full-part-time">
                                              <option value="Full Time">Full Time</option>
                                              <option value="Part Time">Part Time</option>
                                          </select>
                                      </div>
                                      <div class="form-group">
                                          <label class="p-leaving-reason-title input-title"  for="p-leaving-reason">Reason for Leaving</label>
                                          <input type="text" class="form-control" id="p-leaving-reason" placeholder="Reason for leaving">
                                      </div>
                                  </div>
                              </div>
                          </div>
                      </div>
                  </div>
                  <div id="add-del-buttons" class="pull-right">
                      <button type="button" id="btnAdd" class="btn btn-success">Add another</button> <button type="button" id="btnDel" class="btn btn-danger">Delete Row</button>
                  </div>
              </form>



              not sure what part of that would have to change....?
                • 3749
                • 24,544 Posts
                Possibly there's some JavaScript code that handles that and it's either wrong or isn't being loaded.

                If you look at the form in the front end and do a "View Source" in the browser, you should see any JS files it loads (or tries to load) in the head section.

                  Did I help you? Buy me a beer
                  Get my Book: MODX:The Official Guide
                  MODX info for everyone: http://bobsguides.com/modx.html
                  My MODX Extras
                  Bob's Guides is now hosted at A2 MODX Hosting