In our article: “Create a custom form on your public site ” we covered how to get a Google Docs form onto your O365 site to collect data. If you’re looking to publish visitor comments, feedback or any other data submitted through the form back to the site, here’s how:
Since Google stores submitted data in a spreadsheet, what you need to do is simply embed that spreadsheet on your page.
Open the spreadsheet version of the form in Google Docs.
Click the”Share” button up top and select “Publish as a web page”.
Click the”start publishing button”.
Copy the url that opens in the box.
Enter this code in an html module:
Adjust the url, height and width as necessary.
Click here to see a working example.
A note on spam
We’ve never had much of a problem with Google forms, but if you start getting spurious submissions, you can add a validation field to filter out non human submissions (in Google Docs, go to ‘Data / Validate’). If you still get spam, the best defense is to change the url your form is under so the spammers submit to a url that doesn’t exist.
To do that, save your iframe code in notepad as an .aspx file, upload it to documents and iframe that document on your page instead of the Google code. If you periodically change the file name and reupload it you will foil the spam bots who can only post to a url-which of course you’ve changed.
Allowing your site visitors to leave feedback, register for an event or interact in other ways via forms is an essential component of any web site. This was easy in OLSB but unfortunately the Sharepoint form building and data capture features have been removed from the Office 365 public web site offering. There are many 3rd party options available to embed a form but the closest equivalent to a Sharepoint form is probably Google Docs because it offers a very simple and effective way to capture visitor submissions in a convenient spreadsheet in the same way SP populates a list.If you want to see if this fits your needs, click here to see a working example.1: Create the form
First, in your Google Docs account click “Create new” – “Form”
Configure your questions. You can choose from a variety of field formats including multiple choice and checkbox.
This will create a corresponding spreadsheet with each question forming the column header.
Go to the list of your docs and open the form you created which will open the spreadsheet version
Click”Share” up top and change the settings to “Public on the web”
Under “Form”, click “Embed form in a web page”
Copy the code.
2: Embed on a page
2010 style site: Paste the copied code into an html module on your O365 public site page. If you find Google’s code and the html module don’t mesh well together and throw errors like “url not found” or “this content can’t be shown in an iframe”, click here to use our generator which will configure the code for you.
2013 style site: Either insert a “page viewer web part” and enter JUST THE FORM URL. Or copy the Google “embed code” and enter the whole thing in an embed code web part.
You can also:
Add an alert and get emailed when a submission is made
Choose a template background
Add a validation field to deter spam
How it looks
The basic form should look like this on an O365 page. You can of course style the form anyway you want with the provided tools or add your own css. You can see a working example of a form (and published submission spreadsheet) on a 365 site by clicking here.
Any submissions you get will be stored in the spreadsheet so you can sort, filter, and manipulate the data as you choose. If you want to publish submissions back to your site-for instance customer feedback, you can do that easily too. Please click here to see a how to article.
It’s a bit troubling that we have to resort to a 3rd party solution for such a basic functionality as adding a form (especially from Google!) Hopefully, MSFT finds it troubling too and will restore the list publishing and form building capabilities to O365 so we no longer have to.