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
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 osC-2.3.1-simple-captcha-1.2.zip file with the Add-On code.
https://addons.oscommerce.com/info/7822
Once you get the osC-2.3.1-simple-captcha-1.2.zip file on your computer, follow the steps below.
Steps to add a captcha to your contact form
Upload the files in the catalog folder to your osCommerce installation directory.
Upload the example-bh63v.jpg image file to your images directory in your osCommerce installation folder.
Rename the image to captcha.jpg.
Create a folder in your osCommerce installation folder and call it “fonts“.
Upload your font to the font directory for the captcha to work
Edit the following file.
/includes/functions/validations.php
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.
Now visit your website where the contact form is and you will see the captcha on the page.
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.
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
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’);
define(‘CAPTCHA_IMAGE’, DIR_FS_CATALOG . CAPTCHA_LOAD);
make the fonts folder 777
Make the images/captcha.jpg file writable! (666)
I had same the problem and this fixed it. 🙂
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!
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.
Regards,
Arnel C.
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?
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.
Regards,
Arnel C.