<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Pam Van Londen &#187; Forms</title>
	<atom:link href="http://pamvanlonden.com/category/knowledge/forms/feed/" rel="self" type="application/rss+xml" />
	<link>http://pamvanlonden.com</link>
	<description>Corvallis Artist, Oregon Artist. Creating Every Day...paintings, web sites, and courses Oregon daily painter, murals and portraits. Corvallis Web Designer / Web Developer. Original abstract landscape oil paintings</description>
	<lastBuildDate>Wed, 16 May 2012 18:20:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Producing Accessible Forms</title>
		<link>http://pamvanlonden.com/producing-accessible-forms/</link>
		<comments>http://pamvanlonden.com/producing-accessible-forms/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 18:51:05 +0000</pubDate>
		<dc:creator>Pam Van Londen</dc:creator>
				<category><![CDATA[Forms]]></category>
		<category><![CDATA[Knowledge Base]]></category>
		<category><![CDATA[User Data]]></category>

		<guid isPermaLink="false">http://pamvanlonden.com/?p=835</guid>
		<description><![CDATA[<a href="http://pamvanlonden.com/producing-accessible-forms/"><img align="left" hspace="5" width="150" height="150" src="http://pamvanlonden.com/wp-content/plugins/thumbnail-for-excerpts/tfe_no_thumb.png" class="alignleft wp-post-image tfe" alt="" title="" /></a>Introduction Goals of forms and collecting user data Most web sites are built to provide information to visitors. When site owners want to hear from visitors; they make it easy by providing forms which ask questions related to the data they want to collect. Perhaps it&#8217;s just a simple message, such as, &#8220;How did you [...]]]></description>
			<content:encoded><![CDATA[<h3><a href="javascript:goals.slideit()">Introduction</a></h3>
<div id="goals" class="hiddenbox">
<h4>Goals of forms and collecting user data</h4>
<p>Most web sites are built to provide information to visitors. When site owners want to hear from visitors; they make it easy by providing forms which ask questions related to the data they want to collect. Perhaps it&#8217;s just a simple message, such as, &#8220;How did you hear about us?&#8221; Or, &#8220;Did you find what you were looking for?&#8221; Or, &#8220;Contact us and we&#8217;ll contact you.&#8221;</p>
<p>Collecting data from your visitors involves adhering to etiquette, securing form data while in transit, and sharing or not sharing data with third parties, and blocking spam messages. In general, follow these guidelines:</p>
<ul>
<li>Make forms accessible so all visitors can send you a message.</li>
<li>Provide helpful messages and instructions for new internet users.</li>
<li>Use error checking so that form data is clean before sending.</li>
<li>Block automatic spambotsfrom using the form and cluttering up the receiver&#8217;s email inbox.</li>
<li>Notify visitors of your policies regarding their personal data.</li>
</ul>
</div>
<p><script type="text/javascript">// <![CDATA[
  var goals=new animatedcollapse("goals", 500, true)
// ]]&gt;</script></p>
<h4><a href="javascript:access.slideit()">Making Accessible Forms</a></h4>
<div id="access" class="hiddenboxh4">
<p>These fields are used and styled to make filling in a form easier for everyone (especially the blind and keyboard users):</p>
<ul>
<li><strong>fieldset</strong>, to group like fields together.</li>
<li><strong>legend</strong>, to describe each fieldset</li>
<li><strong>label</strong> with &#8220;<strong>for</strong>&#8220;, defined to match the &#8220;ID&#8221; attributed to the input.</li>
<li><strong>tabindex</strong>, for ordering the tab key input.</li>
<li><strong><a href="http://en.wikipedia.org/wiki/Access_keys" target="_blank">accesskey</a></strong>, for allowing keystrokes.
<ul>
<li><a href="http://www.alistapart.com/articles/accesskeys/" target="_blank">Styling with pseudo-elements</a></li>
</ul>
</li>
<li><strong><a href="http://www.cssdrive.com/index.php/examples/exampleitem/focus_pseudo_class/" target="_blank">:focus</a></strong> in CSS, to show which field is active.</li>
</ul>
<h4>Readings</h4>
<dl>
<dt><a href="http://www.websemantics.co.uk/tutorials/accessible_forms/" target="_blank">Accessible forms: Guidelines, examples and accessible JavaScript tricks</a></dt>
<dd>Mike Foskett, Web Semantics. 2006.</dd>
<dt><a href="http://www.webstandards.org/learn/tutorials/accessible-forms/" target="_blank">Accessible HTML/XHTML Forms</a></dt>
<dd>Ian Lloyd, May 2004. The Web Standards Project. Beginning, Intermediate, and Advanced tutorials.</dd>
<dt><a href="http://www.thesitewizard.com/archive/phptutorial2.shtml" target="_blank">Form Validation, Disabling Browser Caching, Embedding HTML Code</a></dt>
<dd>Christopher Heng, The Site Wizard</dd>
<dt><a href="http://www.ngenworks.com/blog/detail/form_field_focus_with_unobtrusive_javascript/" target="_blank">Form field focus with unobtrusive JavaScript</a></dt>
<dd>Joey Marchy. 2006. In the Garage.</dd>
<dt><a href="http://dynamicdrive.com/dynamicindex16/index.html" target="_blank">Dynamic Drive&#8217;s Form Effects</a></dt>
<dd>Updated regularly.</dd>
</dl>
<p>Use these various tags to improve keyboard and screenreader access in forms. Read more in <a href="http://www.webaim.org/techniques/forms/" target="_blank">Creating Accessible Forms</a>.</p>
</div>
<p><script type="text/javascript">// <![CDATA[
  var access=new animatedcollapse("access", 500, true)
// ]]&gt;</script></p>
<h4><a href="javascript:collecting.slideit()">Collecting visitor data</a></h4>
<div id="collecting" class="hiddenboxh4">
<ul>
<li>By email
<ul>
<li>FormMail.php, which resides on the ONID server, will allow your visitors to send data to your OSU email address.
<ul>
<li>You can download a version of FormMail.php to an off-campus server running PHP software.</li>
</ul>
</li>
<li><a href="http://www.thesitewizard.com/archive/feedbackphp.shtml" target="_blank">Feedback Form Script</a> is much simpler and allows you to build in what you want.</li>
</ul>
</li>
<li>With .htaccess files. (CS 295)
<ul>
<li>Note that these options were written for the host vendor&#8217;s server configuration and may not work for ONID or ENGR servers. They do explain many uses for .htaccess, however.</li>
<li><a href="http://javascriptkit.com/howto/htaccess.shtml" target="_blank">Comprehensive guide to .htaccess </a></li>
</ul>
</li>
<li>With Cookies (CS 295)
<ul>
<li>See the next page.</li>
</ul>
</li>
<li>Write to a Database (CS 295)
<ul>
<li>See the next week&#8217;s work.</li>
</ul>
</li>
</ul>
</div>
<p><script type="text/javascript">// <![CDATA[
  var collecting=new animatedcollapse("collecting", 500, true)
// ]]&gt;</script></p>
<h4><a href="javascript:host.slideit()">Which format will the web host/server allow?</a></h4>
<div id="host" class="hiddenboxh4">
<p>Scripts written in one of these three languages are usually provided by a web host. Getting information from their support staff about the path to the script can be difficult, and modifying the refer line of the file is generally a simple matter.</p>
<ul>
<li><strong>CGI scripts </strong>
<ul>
<li><a href="http://www.scriptarchive.com/formmail.html" target="_blank">FormMail</a> is a generic HTML form to e-mail gateway that parses the results of any form and sends them to the specified users. This script has many formatting and operational options, most of which can be specified within each form, meaning you don&#8217;t need programming knowledge or multiple scripts for multiple forms. Previous versions have had security problems.</li>
</ul>
</li>
<li><strong>Perl scripts </strong>
<ul>
<li><a href="http://www.scriptarchive.com/formmail.html" target="_blank">FormMail</a> available in a Perl (.pl) format.</li>
</ul>
</li>
<li><strong>PHP scripts </strong>(3 options)
<ul>
<li>Easy to <a href="http://pamvanlonden.com/php-scripts/" target="_blank">make your own</a>. See <a href="http://dmcinsights.com/php/" target="_blank">PHP for the World Wide Web</a> chapter 3 to get started. Note <a href="http://www.dmcinsights.com/phorum/read.php?f=5&amp;i=915&amp;t=915" target="_blank">corrections</a> to textbook scripts.</li>
<li>The ONID server provides use of FormMail.php. To use it, tag a form with the following path:
<ul>
<li>&lt;form action=&#8221;http://oregonstate.edu/tools/formmail.php&#8221; method=&#8221;post&#8221;&gt;</li>
<li>This will only work if the recipient line goes to an on-campus email address.</li>
<li>Use <a href="http://www.dtheatre.com/scripts/formmail_doc.php" target="_blank">Jack&#8217;s Script&#8217;s tutorial</a> to properly set up the hidden fields.</li>
</ul>
</li>
<li>Download and install a version of formmail.php (several versions of the same name exist)
<ul>
<li><a href="http://www.dtheatre.com/scripts/formmail_doc.php#recommended_variables">Jack&#8217;s Scripts (perhaps out of date)<br />
</a></li>
<li><a href="http://www.tectite.com/formmailpage.php" target="_blank">Tectite</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<p><script type="text/javascript">// <![CDATA[
  var host=new animatedcollapse("host", 500, true)
// ]]&gt;</script></p>
<h4><a href="javascript:security.slideit()">Provide Security</a></h4>
<div id="security" class="hiddenboxh4">
<p>Read through the <a title="Web Security Checklist" href="http://pamvanlonden.com/web-security-checklist/">Web Security Checklist</a> to get an idea how complicated it is to keep forms and web sites secure. Pay close attention to &#8220;Code with security in mind&#8221;, step 6.</p>
</div>
<p><script type="text/javascript">// <![CDATA[
  var security=new animatedcollapse("security", 500, true)
// ]]&gt;</script></p>
<h4><a href="javascript:personal.slideit()">Tell visitors how you will use their personal data</a></h4>
<div id="personal" class="hiddenboxh4">
<dl>
<dt><a href="http://arielsilverstone.com/privacy/how-to-create-a-privacy-policy/" target="_blank">Creating a Privacy Policy (5 part tutorial)</a></dt>
<dd>Ariel Silverstone -The Security Blog</dd>
</dl>
<dl>
<dt><a href="http://www.etrust.org/guidance/creating_privacy_policy.html" target="_blank">Creating your Privacy Policy</a></dt>
<dd>eTrust</dd>
</dl>
<p>In a separate page or message on your form page, tell visitors why you want to hear from the, what you&#8217;ll do with their personal data, and where it will be stored. Will you sell it to third parties? Leave it laying around in your email, or store it in a database so you can send them a newsletter? Use the DMA&#8217;s form to generate a policy for your web site. Edit the results to meet your needs.</p>
</div>
<p><script type="text/javascript">// <![CDATA[
  var personal=new animatedcollapse("personal", 500, true)
// ]]&gt;</script></p>
]]></content:encoded>
			<wfw:commentRss>http://pamvanlonden.com/producing-accessible-forms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adding Components</title>
		<link>http://pamvanlonden.com/adding-components/</link>
		<comments>http://pamvanlonden.com/adding-components/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 18:50:29 +0000</pubDate>
		<dc:creator>Pam Van Londen</dc:creator>
				<category><![CDATA[Forms]]></category>
		<category><![CDATA[Knowledge Base]]></category>
		<category><![CDATA[Promotion]]></category>
		<category><![CDATA[Web Services]]></category>

		<guid isPermaLink="false">http://pamvanlonden.com/?p=833</guid>
		<description><![CDATA[<a href="http://pamvanlonden.com/adding-components/"><img align="left" hspace="5" width="150" height="150" src="http://pamvanlonden.com/wp-content/plugins/thumbnail-for-excerpts/tfe_no_thumb.png" class="alignleft wp-post-image tfe" alt="" title="" /></a>]]></description>
			<content:encoded><![CDATA[<a href="http://pamvanlonden.com/adding-components/"><img align="left" hspace="5" width="150" height="150" src="http://pamvanlonden.com/wp-content/plugins/thumbnail-for-excerpts/tfe_no_thumb.png" class="alignleft wp-post-image tfe" alt="" title="" /></a>]]></content:encoded>
			<wfw:commentRss>http://pamvanlonden.com/adding-components/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

