Miscellaneous

  Home arrow Miscellaneous arrow Page 13 - Form and Spelling Validation
MISCELLANEOUS

Form and Spelling Validation
By: Matt Wade
  • Search For More Articles!
  • Disclaimer
  • Author Terms
  • Rating: 4 stars4 stars4 stars4 stars4 stars / 7
    2003-07-20

    Table of Contents:
  • Form and Spelling Validation
  • Common Form Validations
  • Spell Checking
  • Summary

  •  
     

    SEARCH CODEWALKERS

    TOOLS YOU CAN USE

    advertisement

    Form and Spelling Validation -


    (Page 13 of 14 )

    Now, by this point we have accepted the user input, found the misspelled words, and given the user a form by which they can correct the misspelled words. Now, it is time to apply the corrections that the user made. As seen by the action of the previous form, we will call this page spell2.php. The first thing we will do is to copy the data from the $_POST array into easier to use variables. As with the last posted data, we will check to see if magic quotes are enabled and handle the data appropriately.

    <?php
    $corrections 
    = array();

    if (
    get_magic_quotes_gpc()) {
      
    $text stripslashes ($_POST['original']);
      foreach(
    $_POST['corrections'] as $key=&gt;$value) {
        
    $corrections[$key] = stripslashes($value);
      }
    } else {
      
    $text $_POST['original'];
      
    $corrections $_POST['corrections'];
    }
    ?>

    We will split the original text with the same regular expression used in the beginning.

    <?php
    $words 
    preg_split ("/[\s,.]+/"$text);
    ?>

    Now, we will loop through each correction that needs to be made and apply it. As we apply the corrections, we will surround the corrected word with HTML comments. This will enable us to ensure that we don't replace already replaced words.

    <?php
    foreach($corrections as $key=&gt;$correction) {
        
    $pattern "/(\A|[^(\&lt;!\-\-replaced\-\-\&gt;)A-z])"
                 
    "{$words[$key]}(\Z|[^(\&lt;!\-\-replaced\-\-\&gt;)A-z])/";
        
    $text preg_replace($pattern
                     
    "\\1&lt;!--replaced--&gt;$correction&lt;!--replaced--&gt;\\2"
                     
    $text1);
    }
    ?>

    At this point, all the corrections have been made and all this is left to do is display our result.

    <?php
    echo nl2br($text);
    ?>

    An application such as this spell checker can be used in many different situations. If you are added news to your site, wouldn't it be great to spell check it before publishing? Users would be sure to appreciate spell checking of forum posts before they go live. You could incorporate this into the preview option on your forums. Just about anywhere, you accept text from the user, spell checking can be used.

    More Miscellaneous Articles
    More By Matt Wade

    blog comments powered by Disqus

    MISCELLANEOUS ARTICLES

    - Oracle Database XE: Indexes and Sequences
    - Modifying Tables in Oracle Database XE
    - Oracle Database XE: Tables and Constraints
    - More on Oracle Databases and Datatypes
    - Oracle Database XE Datatypes: Datetime and L...
    - Oracle Database XE Datatypes: Character and ...
    - From Databases to Datatypes
    - Firefox 3.6.6 Released with Improved Plug-in...
    - Attention Bloggers: WordPress 3.0 Now Releas...
    - Reflection in PHP 5
    - Inheritance and Other Advanced OOP Features
    - Advanced OOP Features
    - Linux from Scratch V.6.6 Review
    - Linux Gaining in Strength
    - Install Slackware on Your Old PC


    © 2003-2012 by Developer Shed. All rights reserved. DS Cluster 9 - Follow our Sitemap