www.webdeveloper.com
Results 1 to 6 of 6

Thread: echo on page or js popup?

  1. #1
    Join Date
    Jun 2006
    Location
    Boston, MA
    Posts
    383

    echo on page or js popup?

    hey guys,

    i just grabbed this quick form offline. can anybody help me figure out how to display JS popups about validation errors as opposed to opening a whole new page to display them? also to i'd like to echo the 'thank you' message on the page as opposed to opening a new window as well.

    i tried echoing the errors as well as creating a 'success' variable to no avail. im not that good with php . can anybody help me out?

    PHP Code:
    <?php
    if(isset($_POST['email'])) {
         
        
    // EDIT THE 2 LINES BELOW AS REQUIRED
        
    $email_to "matt@gmail.com";
        
    $email_subject "Your email subject line";
         
         
        function 
    died($error) {
            
    // your error code can go here
            
    echo "We are very sorry, but there were error(s) found with the form you submitted. ";
            echo 
    "These errors appear below.<br /><br />";
            echo 
    $error."<br /><br />";
            echo 
    "Please go back and fix these errors.<br /><br />";
            die();
        }
         
        
    // validation expected data exists
        
    if(!isset($_POST['first_name']) ||
            !isset(
    $_POST['company']) ||
            !isset(
    $_POST['email']) ||
            !isset(
    $_POST['telephone']) ||
            !isset(
    $_POST['interest']) ||
            !isset(
    $_POST['comments'])) {
            
    died('We are sorry, but there appears to be a problem with the form you submitted.');      
        }
         
        
    $first_name $_POST['first_name']; // required
        
    $company $_POST['company']; // required
        
    $email_from $_POST['email']; // required
        
    $telephone $_POST['telephone']; // not required
        
    $interest $_POST['interest']; // not required
        
    $comments $_POST['comments']; // required
         
        
    $error_message "";
        
    $email_exp '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
      if(!
    preg_match($email_exp,$email_from)) {
        
    $error_message .= 'The email address you entered does not appear to be valid.<br />';
      }
        
    $string_exp "/^[A-Za-z .'-]+$/";
      if(!
    preg_match($string_exp,$first_name)) {
        
    $error_message .= 'The name you entered does not appear to be valid.<br />';
      }
      if(!
    preg_match($string_exp,$company)) {
        
    $error_message .= 'The company you entered does not appear to be valid.<br />';
      }
      if(!
    preg_match($string_exp,$interest)) {
        
    $error_message .= 'The area of interest you entered does not appear to be valid.<br />';
      }
      if(
    strlen($comments) < 2) {
        
    $error_message .= 'The specific requests you entered do not appear to be valid.<br />';
      }
      if(
    strlen($error_message) > 0) {
        
    died($error_message);
      }
        
    $email_message "Form details below.\n\n";
         
        function 
    clean_string($string) {
          
    $bad = array("content-type","bcc:","to:","cc:","href");
          return 
    str_replace($bad,"",$string);
        }
         
        
    $email_message .= "First Name: ".clean_string($first_name)."\n";
        
    $email_message .= "Company: ".clean_string($company)."\n";
        
    $email_message .= "Email: ".clean_string($email_from)."\n";
        
    $email_message .= "Telephone: ".clean_string($telephone)."\n";
        
    $email_message .= "Area of Interest: ".clean_string($interest)."\n";
        
    $email_message .= "Specific Requests: ".clean_string($comments)."\n";
         
         
    // create email headers
    $headers 'From: '.$email_from."\r\n".
    'Reply-To: '.$email_from."\r\n" .
    'X-Mailer: PHP/' phpversion();
    @
    mail($email_to$email_subject$email_message$headers); 
    ?>
     
    <!-- include your own success html here -->
     
    Thank you for contacting us. We will be in touch with you very soon.
     
    <?php
    }
    ?>
    "Problems cannot be solved by the same level of thinking that created them.

  2. #2
    Join Date
    Mar 2011
    Posts
    65
    echoing javascript code instead of text will allow you to launch popups.

    The proper way this is done is submitting the form using ajax and checking the callback in background.

  3. #3
    Join Date
    Apr 2010
    Posts
    227
    I like to use javascript for all validation before POSTing

    This is one reason why.

  4. #4
    Join Date
    Jun 2006
    Location
    Boston, MA
    Posts
    383
    any suggestions on a decent validator?
    "Problems cannot be solved by the same level of thinking that created them.

  5. #5
    Join Date
    May 2004
    Location
    chennai, tamil nadu, India
    Posts
    443

    javascript form validator

    Quote Originally Posted by absolutmgd13 View Post
    any suggestions on a decent validator?
    You could try http://rickharrison.github.com/validate.js/
    Chris, Senior Developer,
    Php laravel developers,
    www.chrisranjana.com

  6. #6
    Join Date
    Apr 2010
    Posts
    227
    At it most basic but 100&#37; functional

    HTML Code:
        if(""==document.getElementById("firstname").value){
        alert("Please enter in your First name.");
        document.getElementById("firstname").focus();
        return false;
        }  
    

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles