Securing your osCommerce contact form with the Simple Captcha Add-On

Default contact form osCommerce

When you install osCommerce, you will have a Contact form by default set up for your shop. The Contact form provided works well, except, there is no validation preventing robots from filling the form out. This article will explain how to secure your website contact form using the Simple Captcha Add-On.

Download the captcha module

Download captcha plugin osCommerce

Before you can set up the captcha on your contact form, you will need to download the files from the osCommerce Add-On site. Visit the link below and download the file with the Add-On code.

Once you get the file on your computer, follow the steps below.

Steps to add a captcha to your contact form

  1. Copy captcha files osCommerce

    Upload the files in the catalog folder to your osCommerce installation directory.

  2. Copy image to the server osCommerce

    Upload the example-bh63v.jpg image file to your images directory in your osCommerce installation folder.

  3. Rename the image osCommerce

    Rename the image to captcha.jpg.

  4. create a new folder osCommerce

    Create a folder in your osCommerce installation folder and call it “fonts“.

  5. Upload the font osCommerce

    Upload your font to the font directory for the captcha to work

  6. Edit the validation file osCommerce

    Edit the following file.

  7. Add the captcha code to the file osCommerce

    Paste the following code into the validations.php file before the ?> at the bottom of the page.

    define('CAPTCHA_FONT', DIR_FS_CATALOG . 'fonts/truetypefont.ttf'); define('CAPTCHA_LOAD', 'images/captcha.jpg'); define('CAPTCHA_IMAGE', DIR_FS_CATALOG . CAPTCHA_LOAD);

    Note! You will need a font uploaded. Make sure you change the truetypefont.ttf file name to your font file name. In this case the path will be AeroviasBrasil.ttf.

    Save the changes.

    Final view of captcha osCommerce

    Now visit your website where the contact form is and you will see the captcha on the page.

7 thoughts on “Securing your osCommerce contact form with the Simple Captcha Add-On

  1. I have done the installation steps and it doesn’t work unfortunately.  The captcha.jpg is being created and refreshed at ./image/ directory.

    Even I have input the correct phase, it is always returning the message as below.

    ” Sorry, you have provided an invalid code. “

    Where can I find out the root cause?  Thanks in advance.

    1. Hello Willie,

      You may want to check the module page to ensure it has been kept up to date. Also, check to see if there is a support forum for the module that the developer uses to answer questions and issues.

      Kindest Regards,
      Scott M

    2. In the file catalog/includes/functions/validations.php you MUST CHANGE
      ‘top secret encryption phrase’ to something unique.

      you will have to add these 3 define lines to your catalog/includes/configure.php file before the closing php tag “?>
      define(‘CAPTCHA_FONT’, DIR_FS_CATALOG . ‘fonts/font.ttf’);
      define(‘CAPTCHA_LOAD’, ‘images/captcha.jpg’);

      make the fonts folder 777

      Make the images/captcha.jpg file writable! (666)

      I had same the problem and this fixed it. 🙂

  2. i used your captcha in oscommerce but ho to refresh captcha image without reload page , please provide us the image .php file and any suggest to do that . i am talking about the captcha which one your mention above . please  please please please please please!

    1. Hello Raj,

      We unfortunately can provide a direct solution for that, as it requires changing the code to accomplish the refreh. Check out refresh captcha. This may provide the code that you need.

      I hope this helps to answer your question, please let us know if you require any further assistance.

      Arnel C.

  3. I am getting this error:


    Warning: require(includes/template_top.php) [function.require]: failed to open stream: No such file or directory in /home/pt000071/public_html/store/catalog/contact_us.php on line 76

    Warning: require(includes/template_top.php) [function.require]: failed to open stream: No such file or directory in /home/pt000071/public_html/store/catalog/contact_us.php on line 76

    Fatal error: require() [function.require]: Failed opening required ‘includes/template_top.php’ (include_path=’.:/opt/php5/lib/php’) in /home/pt000071/public_html/store/catalog/contact_us.php on line 76



    new to oscommerce


    Any ideas?

    1. Hello Justina,

      Sorry you’re having problems with osCommerce. The error indicates that the referenced file “template_top.php” doesn’t exist. This may be a part of your installation that is damaged, or the reference to the file may need to be corrected. However, the problem is that we need more info on how the error started. Where you installing something? Can you describe the steps you take to generate this error (if steps are required)? Where does this error occur? It would help to have a URL. What version of osCommerce are you using?

      We basically need more information in order to provide assistance with this issue. Please provide this information and we would be happy to help.

      Arnel C.

Was this article helpful? Join the conversation!