Вы находитесь на странице: 1из 15

install.

cgi Returns 500 Internal Server Error

 Check install.cgi was uploaded in ASCII mode.

 Check permissions are set correctly on install.cgi so it is executable (normally this is 755).

 Check path to perl on top line of install.cgi is correct.

 Check your web host supports Perl, has at least Perl 5 and that your account is enabled to use it.

 Check your web host has the CGI.pm Perl module install that is part of the standard Perl 5 installation.

 Check your web host has the CGI::Carp Perl module which is available free of charge. This module is
used to print software errors in a friendly method rather than simply writing them to a log file and returning
an 'Internal Server Error'.

 Check that you are allowed to run Perl scripts from the directory you've put install.cgi in.

 Try setting the permissions on the directory with install.cgi in to 777 or 755.

 If when you enter your license ID you recieve an error message similar to:

Can't locate object method "get" via package "LWP::UserAgent" (perhaps you forgot to load
"LWP::UserAgent"?) at /*YOURSERVERPATH*/cgi-bin/install.cgi line 99.

This error is received because your server doesn't have the correct Perl module as is used by OpenCrypt
to check licenses and download the OpenCrypt source files. If you receive this error, contact your system
administrator/web hosting company and ask them to install the LWP::UserAgent Perl module on the web
server. This is available from: search.cpan.org.
Once they have installed the module, the software should function correctly.

LWP::UserAgent Source Files:


http://search.cpan.org/CPAN/authors/id/G/GA/GAAS/libwww-perl-5.805.tar.gz
 

 If your license ID is rejected, it is most likely because your web server's IP address has not been
detected correctly during the purchase process, this is very common.

If this occurs, please visit my.OpenCrypt.com and go to the 'License Manager'. Select 'Refresh IP' on the
appropriate license and follow the on-screen instructions for IP address detection.

Online Shopping Cart and 'Add to Cart' Buttons

The OpenCrypt shopping cart/basket system enables us to integrate shopping cart buttons anywhere
within our web site content. These can be used to sell any product with a fixed fee and can be customised
to work in numerous different ways, when selected the item is added to the shopping cart and the button
can change.
 
We can also setup custom responses to shopping cart purchases, for example adding records to your
software licensing database automatically or sending files via email after purchase. Add to cart buttons
can have customisable quantity inputs and products can also be assigned weights so shipping costs can
be calculated based on the products purchased. You can also detect if a user has purchased a particular
product and display different content as you require.
 

 For guidance setting up 'Add to Cart' buttons, please see the PHP Login Interface
documentation.
 For guidance setting up custom shipping costs, please see the Custom Shipping, Payment
Methods and TAX Calculations documentation.
 For a demonstration on the online shopping cart system, please see the Shopping Cart
Integration demonstration.

PHP Login Interface

Guidance relating to the PHP login interface and it's usage.

PHP Login Interface Tutorial and Guidance (version 1.6)

This documentation is updated with each new version of the software, please check you are viewing the
correct documentation for your installation of OpenCrypt by going to:
http://www.opencrypt.com/faq.php?c=25

The PHP login interface enables you to integrate user login with the content of your web site and use an
HTML login interface embedded in your web pages rather than using the traditional pop-up login prompt.
The system offers full anti-hack protection as with the usual pop-up login method, and also includes
support for the 'OpenCrypt Points System'.

The PHP login interface offers seamless integration between your public and secure content, allowing
new content areas in an HTML document to open when a user logs in, and because the interface is
written in PHP, you have unlimited control over your content and the structure of your web site. Within
minutes you can create sophisticated content structures, for example opening additional content in the
web site for each additional month or day a user is registered, this is ideal for e-book's and online
courses.

Note, the 'PHP Login Interface' is used instead of the standard pop-up prompt, it does not work with the
pop-up login prompt as a method of providing an HTML login form!

Configuration
Setting up the PHP login interface does require some knowledge of PHP, if you have some experience
with PHP you should not have any trouble. If you are a novice computer user you may find this
complicated, please feel free to contact us with your questions, however please keep in mind that our
technical support team is not here to teach your to program PHP and can only offer basic guidance and
advice.

login.php is located in the 'php' directory which you will find in your OpenCrypt 'Path to HTTPDocs'
directory. login.php is the main PHP application, login_config.php is the configuration file, login_html.php
is used to display the login prompt, four template files are also included for use with login.php; php-
login.tmpl, php-failed-login.tmpl, php-logout.tmpl and php-logged-in.tmpl.

OpenCrypt version 1.5 and above do not require that you configure the 'PHP Login Interface' like previous
versions, the system should be automatically configured. The configuration is updated whenever you
adjust your 'Central Configuration', 'Register and Manage', 'Styles and Colours', 'Anti-Hack', 'OpenCrypt
Robot' or 'E-Commerce Integration' configuration using the OpenCrypt administration panel.

Basic Usage
To create a login interface, simply create a PHP file for your member's area content, this can simply be an
HTML file which you have renamed as a '.php' file.

Place the following text in the PHP file at the very top of the file:

<?PHP
require "login.php";
?>
It is critical that this is at the top of the file, their must be no HTML, text or blank lines above this text.

This code will load the PHP login interface and associated functions including the shopping cart.

Note, in the require statements you may wish to use a full/absolute server path. To do this, look in your
'Central Configuration' and take the 'Path to HTTPDocs', then simply add '/php/' to the end of the path.
e.g. /path/to/httpdocs/oc/php/ and place this before the file name in the require statement. For example:

<?PHP
require "/path/to/httpdocs/oc/php/login.php";
?>
As explained earlier, login.php does not display the login prompt, to do this we use login_html.php. Simply
include the following code anywhere in the PHP document (after the login.php code):

<?PHP
require "login_html.php";
?>
If you now load your PHP document on the web server, you will see a login prompt in the HTML/PHP
document. You will see you can login, logout and so fourth, but at this stage it does not unlock any secure
content. We do this using conditional statements based around the '$login_successful' variable. If a user
is logged in, '$login_successful' will equal '1', if they have failed to login it will equal '0'.

An example of a basic query follows:

<?PHP
if ("$login_successful" == "1") {
print <<<END
logged in
END;
} else {
print <<<END
not logged in
END;
}
?>
This query is within it's own PHP area in the document, and would need the 'require "login_html.php";'
code to be elsewhere in the PHP document, you can include the statement with the require line.

For example:

<?PHP
require "login_html.php";

if ("$login_successful" == "1") {
print <<<END
logged in
END;
} else {
print <<<END
not logged in
END;
}
?>
The above two examples show a 'logged in' message when the user is logged in, and a 'not logged in'
message when they are not.

These conditional statements form the basis for the login interface and these are what must be used to
setup the secure and public content. You may place as many of these statements in a document as you
wish, though you should only 'require' login.php and login_html.php once in each document.

Example of PHP document:

<?PHP
require "login.php";
?>
<html>
<head><title>Document</title></head>
<body bgcolor="#ffffff" text="#000080"
link="#800000">
<center><table width=650 cellpadding=5
cellspacing=0 border=0>
<tr><td bgcolor="#000080"><font face="Arial"
size="3" color="#eeeeee"><b>An Example PHP Login
Interface</b></font></td></tr>
<tr><td valign=top><font face="Arial">Introduction
Text<p>
Here is an example, below you will see a login
prompt.<P>

<?PHP
require "login_html.php";
?>
<p><hr><p>

<?PHP
if ("$login_successful" == "1") {
print <<<END
<font color="#ff0000">You have now logged in and
opened the secure content in this document.</font>
END;
} else {
print <<<END
Here is some content for non registered users.
END;
}
?>
<p><hr><p>

<?PHP
if ("$login_successful" == "1") {
print <<<END
<font color="#ff0000">Second secure content area
END;
} else {
print <<<END
Here is some more content for non registered users.
END;
}
?>

<p></td></tr></table></center></body></html>
This example includes two areas of secure content which will open when logged in.

Data Import
The following user data tags may be used in any .tmpl file.

%self% - Location of self, e.g. The file being called via


the browser.
%url_cgi% - URL to directory containing OpenCrypt.
%username% - Logged in username.
%email% - User's email address.
%fname% - User's first name.
%lname%- User's last name.
%sub_id% - User's subscription id.
%sub_name% - User's subscription name.
%language% - User's language.
%date_opened% - User's date of account opening.
%date_expire%- User's data of account expiration.
%points% - User's points count.
%session% - Session id, used for PHP login and User
Account Manager login.
The following user data may be displayed in any secure content (values will be blank if not logged in),
document must be PHP and must 'require' login.php.

$envself - Location of self, e.g. The file being called via


the browser.
$url_cgi - URL to directory containing OpenCrypt.
$dbusername - Logged in username.
$dbemail - User's email address.
$dbfname - User's first name.
$dblname - User's last name.
$dbsub_id - User's subscription id.
$dbsub_name - User's subscription name.
$dblanguage - User's language.
$dbvcode - User's validation code (if account not
active).
$dbstage - User's account stage (if account not active,
or being renewed).
$dbactive - User's account status.
$dbdate_opened - User's date of account opening.
$dbdate_expire - User's date of account expiration.
$dbpoints - User's points count.
$session - Session id, used for PHP login and User
Account Manager login.
$envip - User's IP address.
$envref - User's referrer.
$envbrow - User's web browser.
A handy tip, users can move between the PHP login interface and any User Account Manager function
thanks to the sessions system. Simply use the following link in your PHP documents:

$url_cgi/manage.cgi?s=$session&a=home
Or in the templates files:
%url_cgi%/manage.cgi?s=%session%&a=home
You can replace 'home' with other functions such as 'modify' or 'renew', to link directly to update account
details or renew the account.

Points System
To deduct points from an account, use the following code:

$points = charge_points("10");
if ("$points" == "0") {
print "error";
} else {
print "ok";
}
This example will charge the logged in user, 10 points. If they do not have enough points, 'error' is
displayed, otherwise 'ok' is displayed.

Logging System
login.php will automatically log all accesses to the frontend statistics database, this includes the location
of the file being loaded. If for some reason you wish to add additional logging, use the following code:

frontend_log("action");
Replace 'action' with the action id you wish to log. An example that is already is use in the software is:

frontend_log("php_logged_in($envself)");
Shopping Basket
login.php will automatically detect and display a summary of the users shopping basket/cart, to display
the cart summary, simply use the following code:

print "$shopping_basket";
Or, if for example you wish to place a table around the shopping basket summary, simply use the
following code:

if ("$shopping_basket") {
print <<<END
<form action="basket.php" method="get">
<table cellpadding="8" cellspacing="0" border="0">
<tr><td nowrap>
<font face="Verdana" size="1">
$shopping_basket
</font>
</td></tr></table>
</form>
END;
}
'Add to Cart' Buttons
To create an 'Add to Cart' button, simply use the 'buybutton' function. Firstly we create a 'lookup_string'
which specifies the details of the product/item. For example:

$lookup_string ="exampleID---Example Product


NAME---This is an example product description.---
5.00---0---0---0---0";
Simply replace, 'exampleID' with a product ID, this is used to identify the product within the system so it
important you use different IDs for each product. Try to keep them short and simple. Then add your
'Product Name' and a 'Description' replacing the text in the example but making sure to leave the groups
of three hypens intact. These are used as seperators/delimiters. Replace '5.00' with the price of the
product/item. Ignore the following four zeros, these are reserved for future use when the system supports
tax, shipping and recurring payments.

Then to display the 'Add to Cart' button, simply use the following line:

buybutton($lookup_string);
For example:

<?PHP
$lookup_string ="exampleID---Example Product
NAME---This is an example product description.---
5.00---0---0---0---0";
buybutton($lookup_string);
?>
Note, the $lookup_string line should be on one line without any line returns. The example has line returns
so it fits in the pop-up faq used on our web site...

If you want to display a quantity input box next to the 'Add to Cart' button, set the variable $show_quantity
to '1' before loading the buybutton function. You can also return the output from the buybutton function to
a string rather than having the function print the button by setting the variable $return_button to '1', this
enables you to include the button in your HTML with less complicated source code.

For example:

<?PHP
$show_quantity = "1";
$return_button = "1";
$lookup_string ="exampleID---Example Product
NAME---This is an example product description.---
5.00---0---0---0---0";
$button = buybutton($lookup_string);
print $button;
?>
Detect If Product Has Been Purchased
OpenCrypt version 1.7 includes a function for detecting if the logged in user has purchased a product
before. This is used as follows:
require "$path_php/purchases.php";
$product_qty = lookup_purchases("product-ID");
Want to learn more about PHP?
If you are interested in learning more about PHP we would recommend the following resources:

 W3Schools PHP Tutorial - http://www.w3schools.com/PHP/default.asp


 Tizag PHP Tutorial - http://www.tizag.com/phpT/

We would also recommend the following book:

 PHP 6 and MySQL 5 for Dynamic Web Sites: Visual QuickPro Guide -
http://www.dmcinsights.com/phpmysql3/

Custom Shipping, Payment Methods and TAX Calculations

The OpenCrypt membership software offers support for custom shipping, payment methods and TAX
calculations. This enables us to calculate the cost of shipping based on the weight of the products
purchased (if applicable) and we can base the conditions on any data the user has entered, such as their
location. The same functionality applies to TAX calculations which can be calculated for specific
counties/states or countries. You could even setup a postcode specific TAX if you wished. You have
complete control over these conditions and the rate of shipping or percentage TAX to be charged. We can
also setup thresholds for free shipping and shipping base rates depending upon user input (including
location).

The custom payment methods functionality enables us to setup payment pages, so for example we can
offer a 'Cheque/Postal Order' payment page which includes the same invoice as the online payment
page, but includes instructions for offline payments rather than online payment.

To setup customer payment methods, shipping and TAX calculations go to the 'Configuration' ->
'Advanced Settings' -> 'Payment Methods, Shipping and TAX' section of the OpenCrypt administration
panel.

Please contact support with any questions you have when configuring this.

Related Articles

 Additional Products
 Custom Functions
 E-Commerce Enabled
 Is the source code available?
 Payment Processors
 Preset and Custom Validation Checks

1. Additional Products

Included in the OpenCrypt registration form is a 'shopping cart style' system which allows you to sell
additional products alongside your subscriptions. These products can be sold for any one-time fee and
when purchased the system can even be configured to alert specific administrators of the purchase. For
example, to alert the sales team to post a CD-Rom version of the product.

2. Custom Functions

The OpenCrypt membership software offers a 'Custom Functions' feature which enables you to add your
own Perl code to be run by OpenCrypt whenever an account is registered, updated, removed, renewed or
expired. This enables you to integrate third-party software with OpenCrypt, or to extend the actions
performed by OpenCrypt.

The file used to control this functionality in OpenCrypt is called 'custom_functions.pl', this is located in
the /cgi-bin/oc/admin/includes directory.

Their are nine functions included in this file which are outlined below:

&custom_function_register
This function is run whenever an account is created. It is important to check an account is active if that is
relevant to your process since the function isn't just run when an account is finally created.
This function is called with an array called @data containing the account details from the oc_users table.
$data[0] would be the username, $data[2] the email address.

&custom_function_modify
This function is called when an account is modified/updated. This function is called with the $username
variable so you must check the oc_users and oc_user_data tables for the updated data as you require.

&custom_function_remove
This function is called when an account is removed. This function is called with the $username variable.

&custom_function_expire
This function is called when an account is expired. This function is called with the $username variable.

&custom_function_renew
This function is called when an account is renewed. This function is called with the $username variable.

&custom_function_form_constraints
This function enables us to hide custom form fields. This function is called with the $field_id variable and
returns the $hide_field variable. If $hide_field equals '1' then the field is hidden.

&custom_function_form_validation1, &custom_function_form_validation2,
&custom_function_form_validation3
This function enables us to add our own custom field validation. When adding a custom form field you
may select the 'Field Validation' as 'Custom Validation Function 1', '2' or '3', depending upon which is
selected the appropriate function will be run. The function is called with the $field_value variable which
contains the data entered into the field. If the function returns '1' the validation has been parsed
successfully, if the function returns '0' then the validation has failed and the error message will be
displayed.

Please note, we are happy to answer any questions regarding these functions but we cannot offer support
for your Perl code.
3. E-Commerce Enabled

When enabled, the OpenCrypt e-commerce and payment processing systems are available. OpenCrypt
includes a fully automated subscription payment and renewal system with automated invoicing and
detailed billing history. This has been designed to be as user friendly as possible whilst still working
seemlessly without any administrator intervention. Includes support for all major online payment
processors including; WorldPay, Authorize.net, Barclays ePDQ, ProtX and PayPal.

4. Payment Processors

OpenCrypt seamlessly integrates with a variety of payments processors to simplify the process for your
visitors to make payments, and to simplify the integration process for the web site administrator.
 
OpenCrypt offers integration with many major payment processors including; PayPal, WorldPay,
Authorize.net, ProtX / SagePay, Payoffshore, eWay, AlertPay and Barclays ePDQ.
 
OpenCrypt offers integration with PayPal's Website Payments Standard system which offers full callback
and transaction verification and support for automatic recurring payments, OpenCrypt also offers PayPal
PayFlow Link integration though this service does not support automatic recurring payments (contrary to
PayPal's mis-leading content).
 
The PayPal, WorldPay, AlertPay and Barclays ePDQ integration use payment buttons which redirect
users to the payment site hosted by the payment processor as per the processes of each payment
processor.
 
The Authorize.net, ProtX / SagePay, eWay and Payoffshore integration process credit cards via
OpenCrypt and on the web site where OpenCrypt is installed, therefore a secure server (SSL) certificate
is required.
 
At this time the PayPal, AlertPay, Barclays ePDQ, Authorize.net, ProtX / SagePay, eWay and
Payoffshore integration offer methods for automatically charging a recurring fee, in the case of WorldPay
the user is required to return to the OpenCrypt system and submit a new payment for each payment
cycle.  When using Authorize.net, ProtX / SagePay, eWay or Payoffshore the OpenCrypt system will store
user card details and will automatically provoke recurring payments which gives the system complete
control over the payment structures and allows for unmatched flexibility.
 
All integrations include full transaction verification and validation ensuring only valid payments are
processed.
 
We have recently developed integration with eWay and AlertPay which is included with version 1.8.
Note, ProtX recently became SagePay.
 
If you require payment integration with another processor, please contact us for more information.
 

I have chosen to use PayPal as a payment method and filled in the relevant
details in OpenCrypt. What do I have to do on the PayPal site to enable callback?

Go to 'www.PayPal.com' and login to your account. Go to the 'Profile' section and select the 'Instant
Payment Notifications' links. Enable PayPal 'Instant Payment Notifications' and enter the URL of your
'paypal_callback.cgi' file. Your 'paypal_callback.cgi' file is located in the same directory as your
'register.cgi' file and your 'admin' directory. Enter the full URL to the 'paypal_callback.cgi' file. e.g.
http://www.yourdomain.com/cgi-bin/oc/paypal_callback.cgi

If you have any problems configuring any of the PayPal settings on their site, you should contact PayPal
support, not OpenCrypt support.

5. Preset and Custom Validation Checks

OpenCrypt includes a selection of preset validation checks which can be applied to custom form fields on
the registration form. These validation checks include;

Alphanumeric - Input is only letters and numbers


Integer - Input is only number
UK Date - DD/MM/YYYY or YY
US Date - MM/DD/YYYY or YY
UK Postcode - XX00 0XX and all variations
URL - Web site address input, e.g. http://www.domain.com/
Email Address - Validates email input, e.g. email@domain.com

 
The software also offers custom validation functions so you can include your own Perl code to validate
inputs.  For more information, please see the 'Custom Function' article.

Related Articles

 Custom Form Fields


 Custom Form Fields
 Custom Functions
 Custom Shipping, Payment Methods and TAX Calculations
 Step 1, install.cgi Trouble Shooting
 ustom Form Fields

 The 'Custom Form Fields' interface allows you to manage and organise the data inputs required
when a new user attempts to register an account via the online registration system. The
OpenCrypt system supports unlimited1 form fields of any type organised into an unlimited number
of groups/categories.


Before you can add a custom field, you must add a field group.
 To add a new field group, simply select the 'Add Group' button at the top of the 'Custom Form
Fields' page. When selected, a short form will appear requesting the following inputs;
 Group Name:* When adding custom form fields, all fields must be assigned to a group to help
organise data inputs and simplify the process for your visitors. The group name can be anything
you like, for example 'Personal Information' or 'Employment Details' etc...
 Group Explanation:* This is merely a short piece of text to explain what data will be requested in
this section of the form. For example, group name 'Employment Details' may have an explanation
of 'The following inputs request data regarding your current employment status.'
 Order ID: This field allows you to control the order of your form groups. Whichever group has the
lowest number will appear first in the form, and the group with the highest number will be shown
at the bottom of the form.
 Once you have completed the form, please select 'Create Group'. You will then be shown a
confirmation screen to confirm your group has been added successfully. You may now proceed to
add a form field.
 To add a new form field, simply select the 'Add Field' button at the top of the 'Custom Form
Fields' page. When selected, a form will appear requesting the following inputs;
 Field Group:* When adding a custom form field, you must assign the field to a form group. To do
this, simply click on the drop down menu and select the group for this field.
 Field Name:* This field allows you to set the field's name, for example 'Your Occupation' or 'Web
Site Address'.
 Field Explanation:* This is simply a short piece of text to explain to the visitor what data is
required in this field, it's a good idea to give a short note to explain any data restrictions. For
example, field name 'Web Site Address' may have an explanation of 'Please enter the address of
your web site, all addresses must begin with http://'
 Field Error Message:* If a user fails to complete the form field correctly, an error message will
be displayed to explain to them that they cannot proceed without completing the form field
correctly. Obviously, if the field is not required and has no constraints then it is unlikely this
message will appear. An example, field name 'Web Site Address' may have an error message of
'Either you failed to enter your web site address or it has been inputted incorrectly. All URLs must
begin with http://'
 Field Type:* OpenCrypt offers support for the following HTML form field types; textbox, drop-
menu, radio button, checkbox, password and textarea. To select your desired field type, simply
click on the drop down menu and select the group for this field. For further information about field
types, please see, http://www.w3.org/TR/REC-html40/interact/forms.html
 Field Size: This field allows you to specify the size of the input field. How this is used is
dependant upon the visitors web browser. For instance, Microsoft Internet Explorer tends to
exaggerate the size of fields a great deal more than Mozilla Firefox for example. We
recommended for a standard text input entering around '20' to '25'. If your field type is set to
'Textarea', you must specify the height and width of the field. Do this by entering the size in form
COLSxROWS, for example, '20x5'. If your field type is set to 'Dropmenu', the size will allow you to
change the field from a dropmenu to a listbox. If your field type is set to 'Radio' or 'Checkbox' is is
recommended you do not set a size, though doing so will have no effect.
 Field Validation: The following preset options for field validation are offered, these automatically
check data inputs to ensure they match a correct form/format. For instance, if you want someone
to enter their date of birth you may require the date in the specific format, DAY/MONTH/YEAR
which OpenCrypt can ensure is entered correctly before registration is finalised.
 Alphanumeric, this option only allows inputs that contain solely characters and numbers. The
specific range allowed is, a to z, A to Z and 0 to 9. Not much good for foreign language inputs but
very useful for serial number inputs for example.
Integer, this options allows only numeric inputs. Only the number 0 to 9, very useful for entering
age, phone numbers or ZIP code.
Email Address, this will ensure inputs are valid email address, however it will not send a
validation email to ensure it is an active email address.
URL, this option only allows inputs that are valid urls. URLs must begin with http:// and must be in
a valid form according to W3 standards.
UK Date, this will ensure the input is in the form of a UK format date, e.g. DAY/MONTH/YEAR,
30/12/2000.
US Date, this will ensure the input is in the form of a US format date, e.g. MONTH/DAY/YEAR,
12/30/2000.
UK Postcode, this option will ensure the input is a valid United Kingdom postal code. e.g. X0
0XX, XX0 0XX, XX00 0XX.
 A clever of example of the field validation system can be seen if adding a United States ZIP code.
The recommended method is to set the field validation to 'Integer' with the input length restraints
(explained below) set to min '4', max '6'.
 Required: This option specifies whether or not an input in this field is required or not. If the
checkbox is ticked, visitors will be forced to enter an input to proceed with registration.
 Hidden: This option allows you to specify whether or not the field is hidden after initial
registration. This will not hide the field in the registration form, it will still appear so the visitor will
be able to input, however after that initial input it will not be seen again and the user will not be
able to view it again. Useful is entering serial numbers for example.
 Edit: This option allows you to disable modification of the data input after the user has made their
initial input. This means, once the data is entered the user will not be able to modify it. Again,
useful for serial numbers for example.
 Search: If selected, this option enables the field to be searched by your visitors in the member's
area search tool. If not selected, user will not be able to search the field, this does not effect the
administration panel search tool.
 Note, all the above do not effect the administration panel functions, they only effect your visitors
control and view of the field input.
 Hide from Subscriptions: This allows you to hide certain Custom Form Fields based on the
subscription type the new user has selected. For example, you could only show a Custom Form
Field to those users who were part of subscriptions 1 and 2 only. Please note, the subscription
selection must be made before the Custom Form Fields are displayed for this to work correctly.
 Input Length: This field very simply allows you to limit the character length of the field input. For
instance, if entering a name, you know the input must be greater than 2 characters and you may
wish to limit the length of an input to 255 characters. To disable this feature, simply leave the field
blank.
 Field Values: If adding a field of type, 'Dropmenu', 'Checkbox' or 'Radio' you are given the option
to add up to 10 pre-set values. Simply enter your values as desired, if for instance you only use
the first four, simply leave the following six value fields empty/null.
 Once the form is completed, simply select 'Create Field' to add the custom form field.
 To modify or remove a field or field group, simply browse to the 'Custom Form Fields'
interface and select the small radio button of the record you wish to modify/remove. Once
selected, click 'Modify' or 'Remove' and you will be taken to the appropriate page. You will be
prompted for confirmation before any data is removed. * = Requires Data Input'
1
= Technically OpenCrypt supports unlimited form fields, but the software is advertised as
supporting 50 fields. No limit exists, it's a case of testing with more...

Custom Form Fields

 Custom form fields are included in the OpenCrypt system to enable you to collect data from your
users. For example, you may wish to collect personal information such as age or nationality, or
you may need company information such as a web site URL. Whatever your data requirement,
the OpenCrypt registration form can be customised to collect the data you require and can be
configured to restrict data inputs. For instance, a URL must begin with http://
 OpenCrypt offers support for 50 custom form fields of types; textbox, textarea, drop-down menu,
radio button, checkbox and password. All are completely customisable with field grouping, preset
and custom validation checks and field input constraints so you can collect whatever data you
require and be sure it is always in the correct format. When adding custom form fields you have
complete control, whether you want the field to be required or you want to set it so your member's
can't edit the data they entered at registration, you can even set it so they don't see the data ever
again after they enter it. The field's name, the explanation of what data to enter and any error
message details you wish to include are fully customisable.

Вам также может понравиться