Building your Forms
Input Validation
Conditional Questions
Form Calculations
Customization Options
Interactive Tutorials
Managing your Forms
Publishing your Form
- How to retrieve your form's HTML source code
- How to publish your form using a IFRAME
- How to publish your form using a server-side script (API)
- Publishing instructions for common CMS
- How to dynamically prefill your form fields
Configuring Optional Features
- Restricting processing by date or status
- Language settings
- 'Save & Resume Later' option
- 'Preview before Submit' option
- Secure forms (SSL encryption)
- Spam Filter (captcha)
Submission Confirmation and Notifications
- How to redirect your visitor to a web page after the submission.
- How to receive an email for each submission.
- How to easily reply to the person who submitted the response.
- How to customize the email notification.
- How to send an auto-responder with each submission.
Dynamic Configuration with Formulas
Sharing Forms and Data
- How to allow another user to edit your form.
- How to add another user to your account.
- Feature Restrictions
Workflows
Managing your Data
How to Export your Data
Troubleshooting
Publishing Issues
- Unexpected characters in the form, such as 'À' or ''
- Incorrect rendering when publishing via the API
Form Submission Issues
Export Issues
- Error: 'File not loaded completely' in Excel
- Garbled characters in Excel
- Repeated sections cannot be sorted in Excel
Managing your Account
PayPal Subscription
- How to change your PayPal funding source
- How to switch your subscription to a different PayPal account
- How to cancel your PayPal subscription and pay directly with a credit card
Connectors Documentation
Salesforce Connector Documentation Index
PayPal Connector Documentation Index
HTTP POST Connector Documentation Index
Not finding what you need? Please open a support request.
Form Publishing Options
How to retrieve your form's HTML source code
- First, log into your formassembly.com account, go to the 'forms' tab and click on the form you need to set up. This opens the form properties panel on the right-hand side.
- In the "Publish" tab, 'Option 2' section, copy the content of the text box (or click the "Download it" link and open the HTML file in your HTML editor).
- Using your favorite web editor, create a new page on your site and paste the HTML. When doing this, make sure that you are editing the HTML code directly (you should be able to see and edit the HTML tags).
- When copy and pasting, you will notice that the HTML starts with:
<!-- FORM: HEAD SECTION -->,
and further down, there's
<!-- FORM: BODY SECTION -->
Ideally, you will want to place the HTML between these two comments before the closing </HEAD> tag in your page.
If this is confusing, just ignore this particular instruction, it should work anyway. - Upload the page (if applicable) and test. You should be able to see the form, submit it, and the form validation should work (ie. you should see an error if a required field is left empty).
How to publish your form using a IFRAME
- Log into your formassembly.com account, go to the 'forms' tab and click on the form you need to set up. This opens the form properties panel on the right-hand side.
- In the "Publish" tab, note the public address of your form.
- Using your favorite web page editor, create a new page on your site and paste the following code, changing the address to match the public address of your form.
<iframe src="http://app.formassembly.com/forms/view/YOUR_FORM_ID" height="400" width="200" frameborder="0" ></iframe> - You will need to adjust the height and width parameter until your form fits in the iframe.
- If you need to remove the default background from the form, follow these instructions (see 'Removing the default background on forms hosted directly on FormAssembly.com').
How to publish your form using a server-side script (API)
Jump to code sample for: PHP | ASP | .NET | Ruby on Rails | Java
Using your preferred website editor, copy & paste the following code sample in the web page where you want your form to be visible. When doing this, make sure that you are editing the HTML code directly (often called 'HTML view', or 'code view').
Your form URL is shown in the "Publish" tab, in the "Option 2 - Publish on your own website" section. Change the URL in the code sample below to match your form's URL. Only the last part (INSERT_FORM_ID_HERE) should be different.
If your server runs PHP:
<?php if(!isset($_GET['tfa_next'])) { echo file_get_contents("http://app.formassembly.com/rest/forms/view/INSERT_FORM_ID_HERE"); } else { echo file_get_contents("http://app.formassembly.com/rest".$_GET['tfa_next']); } ?>
If your server runs ASP:
<% Dim objWinHttp Dim strHTML Set objWinHttp = Server.CreateObject("WinHttp.WinHttpRequest.5.1") if(request.querystring("tfa_next")="") then objWinHttp.Open "GET", "http://app.formassembly.com/rest/forms/view/INSERT_FORM_ID_HERE" else objWinHttp.Open "GET", "http://app.formassembly.com/rest" & request.querystring("tfa_next") end if objWinHttp.Send Response.Write objWinHttp.ResponseText Set objWinHttp = Nothing %>
If your server runs IIS/.NET:
<%@ Import Namespace="System" %> <%@ Import Namespace="System.IO" %> <%@ Import Namespace="System.Net" %> <%@ Import Namespace="System.Text" %> <html> <script language="C#" runat="server"> void Page_Load(Object Src, EventArgs E) { WebRequest request; if (Request.QueryString["tfa_next"] == null) { request = WebRequest.Create("http://app.formassembly.com/rest/forms/view/INSERT_FORM_ID_HERE"); } else { request = WebRequest.Create("http://app.formassembly.com/rest" + Request.QueryString["tfa_next"]); } WebResponse response = request.GetResponse (); Stream dataStream = response.GetResponseStream (); StreamReader reader = new StreamReader (dataStream, Encoding.UTF8); FAForm.InnerHtml = reader.ReadToEnd (); reader.Close (); response.Close (); } </script> <body> <span id="FAForm" runat="server"/> </body> </html>
If your run Ruby on Rails:
In your controller: def feedback if params[:tfa_next] url = "/rest/#{params[:tfa_next]}" else url = "/rest/forms/view/INSERT_FORM_ID_HERE" end response = Net::HTTP.get_response("app.formassembly.com", url).body @form_head, @form_body = response.split('<!-- FORM: BODY SECTION -->') end In your view: <% content_for("head") do %> <%= @form_head %> <% end %> <%= @form_body %> In your layout: <head> [...] <%= yield :head %> </head>
If your run Java:
Resource
Download Package: com.formassembly.api.restJSP Example:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="com.formassembly.api.rest.Form" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>FormAssembly REST API JAVA Example</title> </head> <body> <%=Form.getHTML(2, request.getParameter("tfa_next") )%> </body> </html></p>
If your server uses a different server-side technology:
Regardless of what technology is available, if your server is capable of doing HTTP requests, you should be able to retrieve and display the form. Please refer to your server documentation or google for more information.