Forms and arrays - comparing values from one field to another

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Adrienne Boswell

    Forms and arrays - comparing values from one field to another

    I have a form which I am letting the user enter more than one event at
    a time. I need to check whether one date is less than another. If the
    display to date is earlier than the event date, then of course that's
    an error.

    I am getting values like:
    areaevent_displ ay_from: 09/29/2006, 09/209/2006
    areaevent_displ ay_to: 09/29/2006, 08/29/2006

    I could say:
    if areaevent_displ ay_toarr(1) < areaevent_displ ayfromarr(1) then
    'error
    end if

    However, because I am looping through the form collection, and then
    doing for each fields value, I'm not assigning arrays, so I can't do
    the above. Any ideas?

    Below is the relavent bit of my code (there are more fields):

    <%
    For ix = 1 to Request.Form.Co unt
    field = request.form.ke y(ix)
    inputvalue = request.form.it em(ix)
    y = 0
    if isrequired(fiel d) then
    for each values in split(inputvalu e,", ")
    if trim(values) = "" then
    call requiredthing
    end if
    y = y + 1
    if cint(numforms) < y then
    exit for
    end if
    next
    end if
    next

    areaevent_from = date() & ", " & date() & ", " & date() & ", " & date()
    & ", " & date() & ", " & date() & ", " & date()
    areaevent_to = date()+30 & ", " & date()+30 & ", " & date()+30 & ", " &
    date()+30 & ", " & date()+30 & ", " & date()+30 & ", " & date()+30
    event_date = date() & ", " & date() & ", " & date() & ", " & date() &
    ", " & date() & ", " & date() & ", " & date()
    areaevent_displ ay_text = "Name of Event, Name of Event, , , , "

    areaevent_froma rr = split(areaevent _from,", ")
    areaevent_toarr = split(areaevent _to,", ")
    event_datearr = split(event_dat e,", ")
    areaevent_displ ay_textarr = split(areaevent _display_text," , ")

    sub requiredthing

    thefield = field & y
    required = dorequired(requ ired,thefield)

    end sub

    function dorequired(curr ent, field)
    if instr(current,f ield) 0 then
    'do nothing it's already there
    else
    if current <"" then
    dorequired = current & ", " & field
    else
    dorequired = field
    end if
    end if
    end function
    %>
    <form method="post"
    action="<%=Requ est.ServerVaria bles("SCRIPT_NA ME")%>?<%=makeq string(qstring) %>">
    <% for i = 0 to noforms %>
    <div class="goldiloc ks">
    <label for="event_date " id="eventdate<% =i%>1">Event Date:</label>
    <input type="text" id="event_date< %=i%>" name="event_dat e"
    value="<%=event _datearr(i)%>" size="10" /><br />
    <label for="areaevent_ display_from<%= i%>"
    id="areaevent_d isplay_from<%=i %>1">Display From: </label<input
    type="text" id="areaevent_f rom<%=i%>" name="areaevent _from"
    value="<%=areae vent_fromarr(i) %>" size="10" /><br />
    <label for="areaevent_ display_to<%=i% >"
    id="areaevent_d isplay_from<%=i %>1" style="float:no ne;
    width:7em">Disp lay To: </label<input type="text"
    id="areaevent_t o<%=i%>" name="areaevent _to"
    value="<%=areae vent_toarr(i)%> " size="10" /br />
    <label for="areaevent_ display_text<%= i%>"
    id="areaevent_d isplay_text<%=i %>1">Event Heading:</label<input
    type="text" name="areaevent _display_text"
    id="areaevent_d isplay_text<%=i %>"
    value="<%=areae vent_display_te xtarr(i)%>" size="40" maxlength="100"
    <%if Request.ServerV ariables("REQUE ST_METHOD") ="GET"
    then%>onfocus=" if(this.value == '<%=areaevent_d isplay_textarr( i)%>')
    this.value = '';"<%end if % /><br />
    </div>
    <% next %>
    <input type="submit" value="Submit">
    </form>

    Thanks in advance for any assistance.

    --
    Adrienne Boswell at work
    Administrator nextBlock.com

    Please respond to the group so others can share

  • Jon Paal

    #2
    Re: Forms and arrays - comparing values from one field to another

    I would first do a check to make sure it is a date then proceed as you have described.

    When you perform a split the result is an array...so why not compare those values ?


    "Adrienne Boswell" <arbpen@yahoo.c omwrote in message news:1159469534 .470889.92980@i 42g2000cwa.goog legroups.com...
    >I have a form which I am letting the user enter more than one event at
    a time. I need to check whether one date is less than another. If the
    display to date is earlier than the event date, then of course that's
    an error.
    >
    I am getting values like:
    areaevent_displ ay_from: 09/29/2006, 09/209/2006
    areaevent_displ ay_to: 09/29/2006, 08/29/2006
    >
    I could say:
    if areaevent_displ ay_toarr(1) < areaevent_displ ayfromarr(1) then
    'error
    end if
    >
    However, because I am looping through the form collection, and then
    doing for each fields value, I'm not assigning arrays, so I can't do
    the above. Any ideas?
    >
    Below is the relavent bit of my code (there are more fields):
    >
    <%
    For ix = 1 to Request.Form.Co unt
    field = request.form.ke y(ix)
    inputvalue = request.form.it em(ix)
    y = 0
    if isrequired(fiel d) then
    for each values in split(inputvalu e,", ")
    if trim(values) = "" then
    call requiredthing
    end if
    y = y + 1
    if cint(numforms) < y then
    exit for
    end if
    next
    end if
    next
    >
    areaevent_from = date() & ", " & date() & ", " & date() & ", " & date()
    & ", " & date() & ", " & date() & ", " & date()
    areaevent_to = date()+30 & ", " & date()+30 & ", " & date()+30 & ", " &
    date()+30 & ", " & date()+30 & ", " & date()+30 & ", " & date()+30
    event_date = date() & ", " & date() & ", " & date() & ", " & date() &
    ", " & date() & ", " & date() & ", " & date()
    areaevent_displ ay_text = "Name of Event, Name of Event, , , , "
    >
    areaevent_froma rr = split(areaevent _from,", ")
    areaevent_toarr = split(areaevent _to,", ")
    event_datearr = split(event_dat e,", ")
    areaevent_displ ay_textarr = split(areaevent _display_text," , ")
    >
    sub requiredthing
    >
    thefield = field & y
    required = dorequired(requ ired,thefield)
    >
    end sub
    >
    function dorequired(curr ent, field)
    if instr(current,f ield) 0 then
    'do nothing it's already there
    else
    if current <"" then
    dorequired = current & ", " & field
    else
    dorequired = field
    end if
    end if
    end function
    %>
    <form method="post"
    action="<%=Requ est.ServerVaria bles("SCRIPT_NA ME")%>?<%=makeq string(qstring) %>">
    <% for i = 0 to noforms %>
    <div class="goldiloc ks">
    <label for="event_date " id="eventdate<% =i%>1">Event Date:</label>
    <input type="text" id="event_date< %=i%>" name="event_dat e"
    value="<%=event _datearr(i)%>" size="10" /><br />
    <label for="areaevent_ display_from<%= i%>"
    id="areaevent_d isplay_from<%=i %>1">Display From: </label<input
    type="text" id="areaevent_f rom<%=i%>" name="areaevent _from"
    value="<%=areae vent_fromarr(i) %>" size="10" /><br />
    <label for="areaevent_ display_to<%=i% >"
    id="areaevent_d isplay_from<%=i %>1" style="float:no ne;
    width:7em">Disp lay To: </label<input type="text"
    id="areaevent_t o<%=i%>" name="areaevent _to"
    value="<%=areae vent_toarr(i)%> " size="10" /br />
    <label for="areaevent_ display_text<%= i%>"
    id="areaevent_d isplay_text<%=i %>1">Event Heading:</label<input
    type="text" name="areaevent _display_text"
    id="areaevent_d isplay_text<%=i %>"
    value="<%=areae vent_display_te xtarr(i)%>" size="40" maxlength="100"
    <%if Request.ServerV ariables("REQUE ST_METHOD") ="GET"
    then%>onfocus=" if(this.value == '<%=areaevent_d isplay_textarr( i)%>')
    this.value = '';"<%end if % /><br />
    </div>
    <% next %>
    <input type="submit" value="Submit">
    </form>
    >
    Thanks in advance for any assistance.
    >
    --
    Adrienne Boswell at work
    Administrator nextBlock.com

    Please respond to the group so others can share
    >

    Comment

    Working...