Solved

Form Protection

Posted on 2006-11-10
10
171 Views
Last Modified: 2010-03-31
I am trying to prevent a form from having website links input into various fields as I am being bombarded with these.

The following is an example of received emails and below is the code I use to check my form.

It is unfortunate that my example email could also providing these links from ee now so I have added an extra t to the http to prevent this

- - - - Contact Details - - - -

Enquiry Date:       Good site! <a href=htttp://play-online-keno.blogspot.com/>keno</a> [url=htttp://play-online-keno.blogspot.com/]keno[/url]
First Name:         keno
Last Name:          keno
Address:            usaa
Phone:              12345
E-mail:             kenoas@gmail.com

- - - - Requirement and Date - - -

Date:               2018-08-28
Transport For:      Other
Enquiring About:    Good site! <a href=htttp://play-online-keno.blogspot.com/>keno</a> [url=htttp://play-online-keno.blogspot.com/]keno[/url]

- - - - Journey Details - - - -  

Collection Place:   Good site! <a href=htttp://play-online-keno.blogspot.com/>keno</a> [url=htttp://play-online-keno.blogspot.com/]keno[/url]
Ceremony Area:      Good site! <a href=htttp://play-online-keno.blogspot.com/>keno</a> [url=htttp://play-online-keno.blogspot.com/]keno[/url]
Reception:          Good site! <a href=htttp://play-online-keno.blogspot.com/>keno</a> [url=htttp://play-online-keno.blogspot.com/]keno[/url]
Hotel Location:     Good site! <a href=htttp://play-online-keno.blogspot.com/>keno</a> [url=htttp://play-online-keno.blogspot.com/]keno[/url]

- - - - Vehicles Considered - - -

Dark Blue Jaguar - Fay:    Interested

Dark Blue Mercedes - Blue: Interested

White Mercedes - Lady:     Interested

Silver Spirit - Duchess:   Interested

Silver Spirit - Patience:  Interested

Silver Spirit - Mary:      Interested

Silver Shadow - Tabatha:   Interested

Bentley Arnage - Joy:      Interested

Bentley R-Type - Amy:      Interested

Bentley Mk 6 - Ruth:       Interested

Bentley S1 - Emily:        Interested

Continental - Goddess:     Interested

Lagonda - Grace:           Interested

- - - - Other Information - - -

Good site! <a href=htttp://play-online-keno.blogspot.com/>keno</a> [url=htttp://play-online-keno.blogspot.com/]keno[/url]

- - - - Enquiry Source Wedding




---------------------------------------

My code is as follows

<script>
<!--


function validate(form) {
    if (form.firstName.value.length == 0)
    {
        alert("Please enter your first name.")
        form.firstName.focus()
        return false
    }
      
      

    if (form.lastName.value.length == 0)
    {
        alert("Please enter your last name.")
        form.lastName.focus()
        return false
    }
      
          if (form.email.value.length == 0)
    {
        alert("Please enter your e-mail address.")
        form.email.focus()
        return false
    }

    if (form.email.value.indexOf("@") == -1)
    {
        alert("Please enter a valid e-mail address.");
        form.email.focus();
        return false;
    }

                if (form.selectDay.value == 0)
    {
        alert("Please Enter a Day.")
        form.selectDay.focus()
        return false
    }


          if (form.selectMonth.value == 0)
    {
        alert("Please Enter a Month.")
        form.selectMonth.focus()
        return false
    }

      
          if (form.selectYear.value == 0)
    {
        alert("Please Enter a Year.")
        form.selectYear.focus()
        return false
    }

    if (form.transType.value == "Please Select Usage")
    {
        alert("Please Select Transport For.")
        form.transType.focus()
        return false
    }

 
 if (form.requiredFor.value == "Please Select")
    {
        alert("Please Choose Required For Section.")
        form.requiredFor.focus()
        return false
    }

   
        if (form.collectionTown.value.length == 0)
    {
        alert("Please the Initial Collection Point.")
        form.collectionTown.focus()
        return false
    }

}
//-->
</script>


PLEASE help here and understand that I do not know anything about java

Many thanks

Ashley
0
Comment
Question by:jezella
  • 4
  • 3
  • 3
10 Comments
 
LVL 9

Expert Comment

by:owenli27
ID: 17916020
Hi Ashley

Try to add a block of code into your function, like this:

function validate(form) {

    for (var i = 0; i<form.length;  i++)
    {
        if(form.elements[i].value.indexOf("http:") >= 0){
            alert(form.elements[i].value);
            form.elements[i].focus();
            return false;
        }
    }

    if (form.firstName.value.length == 0)
    {
        alert("Please enter your first name.")
        form.firstName.focus()
        return false
    }

...    
...
...
0
 
LVL 9

Expert Comment

by:owenli27
ID: 17916054
You can change  alert(form.elements[i].value);  to a message you want to display, such as
alert("No URL links allowed");
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 17918803
You're in the wrong TA actually. You need JavaScript. Use regular expressions that match urls. Plenty of them on the Web
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 9

Expert Comment

by:owenli27
ID: 17919745
Yes. it is a better way to use reg expression because it is more flexible and case-insensitive.  

function validate(form) {
    for (var i = 0; i<form.length;  i++)
    {
       if(form.elements[i].value.match(/http:/gi) ){
          alert("No URL links allowed");
          form.elements[i].focus();
          return false;
       }
    }
...
...
0
 

Author Comment

by:jezella
ID: 17920720
Thank you to both. So if I just add the following above each form element

for (var i = 0; i<form.length;  i++)
    {
       if(form.elements[i].value.indexOf("http:") >= 0){
          alert(form.elements[i].value);
          form.elements[i].focus();
          return false;
       }
    }


Will this solve the problem?
Since I posted this yesterday I've received 16 of these foolish junk emails.  What I can't understand is what use can these ever be as they will not create link of any use?

Ashley
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 17920731
I would include "mailto:" as well perhaps

>>What I can't understand is what use can these ever be as they will not create link of any use?

Could be being done by bots, which wouldn't necessarily understand that's the case
0
 
LVL 9

Accepted Solution

by:
owenli27 earned 500 total points
ID: 17921819
After added "mailto:", your code will be like this:

<script>
<!--

function validate(form) {

   for (var i = 0; i<form.length;  i++)
    {
       if(form.elements[i].value.match(/http:|mailto:/gi) ){
          alert("No URL links allowed");
          form.elements[i].focus();
          return false;
       }
    }

    if (form.firstName.value.length == 0)
    {
        alert("Please enter your first name.")
        form.firstName.focus()
        return false
    }
     
    if (form.lastName.value.length == 0)
    {
        alert("Please enter your last name.")
        form.lastName.focus()
        return false
    }
......
......
0
 

Author Comment

by:jezella
ID: 17928939
Owen.  That's worth 100000 points.  Many thanks for that.

Ashley
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 17928962
jezella - can you tell me why you ignored my contributions?
0
 

Author Comment

by:jezella
ID: 17929033
CEHJ Sorry that was an oversight.  Generally, I thank all by name as all contributions are more than welcome and often helpful.  In the case of Owen's answer, what was provided here was just a matter of copy and paste resulting in a complete answer.  Very sorry to have hurt your feelings.

Jezella
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Groovy problem when using SOAPUI : DispatchException occurred 7 58
fibonacci ten numbers 4 45
java imports not found 4 20
collection output issue 9 36
INTRODUCTION Working with files is a moderately common task in Java.  For most projects hard coding the file names, using parameters in configuration files, or using command-line arguments is sufficient.   However, when your application has vi…
Are you developing a Java application and want to create Excel Spreadsheets? You have come to the right place, this article will describe how you can create Excel Spreadsheets from a Java Application. For the purposes of this article, I will be u…
Viewers learn about the “while” loop and how to utilize it correctly in Java. Additionally, viewers begin exploring how to include conditional statements within a while loop and avoid an endless loop. Define While Loop: Basic Example: Explanatio…
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question