<?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>Astagram Studios- A Creative Studio- Official Blog &#187; Tutorial</title>
	<atom:link href="http://www.astagramstudios.com/blog/category/tutorial/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.astagramstudios.com/blog</link>
	<description>Where creativity defined!</description>
	<lastBuildDate>Fri, 02 Sep 2011 17:32:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Signup Form With PHP, jQuery and CSS3</title>
		<link>http://www.astagramstudios.com/blog/tutorial/signup-form-with-php-jquery-and-css3/</link>
		<comments>http://www.astagramstudios.com/blog/tutorial/signup-form-with-php-jquery-and-css3/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 18:01:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[form]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[signup]]></category>
		<category><![CDATA[website]]></category>

		<guid isPermaLink="false">http://www.astagramstudios.com/blog/?p=582</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><!-- in <a href="http://tutorialzine.com/category/tutorials/css-tutorials/" mce_href="http://tutorialzine.com/category/tutorials/css-tutorials/" title="View all posts in CSS" rel="category tag">CSS</a>,  <a href="http://tutorialzine.com/category/tutorials/php-tutorials/" mce_href="http://tutorialzine.com/category/tutorials/php-tutorials/" title="View all posts in PHP" rel="category tag">PHP</a>,  <a href="http://tutorialzine.com/category/tutorials/jquery-tutorials/" mce_href="http://tutorialzine.com/category/tutorials/jquery-tutorials/" title="View all posts in jQuery" rel="category tag">jQuery</a>&#8211;></p>
<p><a href="http://www.astagramstudios.com/blog/wp-content/uploads/2010/04/i11.png"><img class="alignleft size-full wp-image-583" title="i11" src="http://www.astagramstudios.com/blog/wp-content/uploads/2010/04/i11.png" alt="" width="620" height="460" /></a></p>
<h2><a href="http://demo.tutorialzine.com/2010/04/carbon-signup-form/demo.html" target="_blank">DEMO</a> <a href="http://demo.tutorialzine.com/2010/04/carbon-signup-form/demo.zip">DOWNLOAD</a></h2>
<p>Today we are making a carbon fiber – style form, build using  progressive enhancement. This  means that we first ensure that the form  works well without JavaScript  and fancy CSS support (think of IE6 here)  and later move on by layering  over cool styling, AJAX and jQuery  magic.</p>
<p>The form features its own custom tooltip validation, and is even  perfectly usable with JavaScript disabled.</p>
<h3>Step 1 – XHTML</h3>
<p>The first step includes creating the XHTML backbone of the form. It  has to be simple, and, according to the principles defined by  progressive enhancement, must be perfectly usable by itself.</p>
<h4>demo.html</h4>
<div id="highlighter_529647">
<div>
<div><a title="view source" href="http://tutorialzine.com/2010/04/carbon-signup-form/#viewSource">view  source</a></p>
<div><object id="highlighter_529647_clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="highlighterId=highlighter_529647" /><param name="src" value="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" /><param name="wmode" value="transparent" /><embed id="highlighter_529647_clipboard" type="application/x-shockwave-flash" width="16" height="16" src="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" wmode="transparent" flashvars="highlighterId=highlighter_529647"></embed></object></div>
<p><a title="print" href="http://tutorialzine.com/2010/04/carbon-signup-form/#printSource">print</a><a title="?" href="http://tutorialzine.com/2010/04/carbon-signup-form/#about">?</a></div>
</div>
<div>
<div>
<table>
<tbody>
<tr>
<td><code>01</code></td>
<td><code>&lt;</code><code>div</code> <code>id</code><code>=</code><code>"carbonForm"</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>02</code></td>
<td><code> </code><code>&lt;</code><code>h1</code><code>&gt;Signup&lt;/</code><code>h1</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>03</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>04</code></td>
<td><code> </code><code>&lt;</code><code>form</code> <code>action</code><code>=</code><code>"submit.php"</code> <code>method</code><code>=</code><code>"post"</code> <code>id</code><code>=</code><code>"signupForm"</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>05</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>06</code></td>
<td><code> </code><code>&lt;</code><code>div</code> <code>class</code><code>=</code><code>"fieldContainer"</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>07</code></td>
<td><code> </code><code>&lt;</code><code>div</code> <code>class</code><code>=</code><code>"formRow"</code><code>&gt;&lt;/</code><code>div</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>08</code></td>
<td><code> </code><code>&lt;!-- Two more formRow divs --&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>09</code></td>
<td><code> </code><code>&lt;/</code><code>div</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>10</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>11</code></td>
<td><code> </code><code>&lt;</code><code>div</code> <code>class</code><code>=</code><code>"signupButton"</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>12</code></td>
<td><code> </code><code>&lt;</code><code>input</code> <code>type</code><code>=</code><code>"submit"</code> <code>name</code><code>=</code><code>"submit"</code> <code>id</code><code>=</code><code>"submit"</code> <code>value</code><code>=</code><code>"Signup"</code> <code>/&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>13</code></td>
<td><code> </code><code>&lt;/</code><code>div</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>14</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>15</code></td>
<td><code> </code><code>&lt;/</code><code>form</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>16</code></td>
<td><code>&lt;/</code><code>div</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<p>The <strong>carbonForm </strong>div is the main container for the  form. It is centered in the middle of the page with the CSS <strong>margin </strong>property, and then centered vertically with jQuery (take a  look at <a href="http://tutorialzine.com/2010/03/centering-div-vertically-and-horizontally/" target="_blank">our MicroTut</a> for more info about centering).</p>
<p>Inside it we have the heading and the form with the <strong>fieldContainer </strong>div. Inside it there are three <strong>formRow </strong>divs,  which share the markup given below:</p>
<h4>demo.html</h4>
<div id="highlighter_769906">
<div>
<div><a title="view source" href="http://tutorialzine.com/2010/04/carbon-signup-form/#viewSource">view  source</a></p>
<div><object id="highlighter_769906_clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="highlighterId=highlighter_769906" /><param name="src" value="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" /><param name="wmode" value="transparent" /><embed id="highlighter_769906_clipboard" type="application/x-shockwave-flash" width="16" height="16" src="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" wmode="transparent" flashvars="highlighterId=highlighter_769906"></embed></object></div>
<p><a title="print" href="http://tutorialzine.com/2010/04/carbon-signup-form/#printSource">print</a><a title="?" href="http://tutorialzine.com/2010/04/carbon-signup-form/#about">?</a></div>
</div>
<div>
<div>
<table>
<tbody>
<tr>
<td><code>1</code></td>
<td><code>&lt;</code><code>div</code> <code>class</code><code>=</code><code>"formRow"</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>2</code></td>
<td><code> </code><code>&lt;</code><code>div</code> <code>class</code><code>=</code><code>"label"</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>3</code></td>
<td><code> </code><code>&lt;</code><code>label</code> <code>for</code><code>=</code><code>"name"</code><code>&gt;Name:&lt;/</code><code>label</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>4</code></td>
<td><code> </code><code>&lt;/</code><code>div</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>5</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>6</code></td>
<td><code> </code><code>&lt;</code><code>div</code> <code>class</code><code>=</code><code>"field"</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>7</code></td>
<td><code> </code><code>&lt;</code><code>input</code> <code>type</code><code>=</code><code>"text"</code> <code>name</code><code>=</code><code>"name"</code> <code>id</code><code>=</code><code>"name"</code> <code>/&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>8</code></td>
<td><code> </code><code>&lt;/</code><code>div</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>9</code></td>
<td><code>&lt;/</code><code>div</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<p>Each pair of <strong>label </strong>and <strong>input </strong>elements  is positioned inside its own wrapping divs, which are floated to the  left. This allows for the layout of the form you can see in the  demonstration page. It is important to have the text box names the <strong>same</strong> as their <strong>id</strong>s, because this is used to display the  error tooltips as you will see in the next steps.</p>
<div id="attachment_837"><a href="http://tutorialzine.com/wp-content/uploads/2010/04/i11.png"><img title="Carbon Fiber Signup Form" src="http://tutorialzine.com/wp-content/uploads/2010/04/i11.png" alt="Carbon Fiber Signup Form" width="620" height="460" /></a>Carbon Fiber Signup Form</p>
</div>
<h3>Step 2 – CSS</h3>
<p>The form relies heavily on CSS to achieve the carbon fiber effect. A  number of CSS3 rules are used as well, which successfully mimic the  effects previously possible only in graphic suites as Photoshop. Only  the most interesting styles are given here, you can see the rest in <strong>styles.css</strong> in the download archive.</p>
<h4>styles.css</h4>
<div id="highlighter_834389">
<div>
<div><a title="view source" href="http://tutorialzine.com/2010/04/carbon-signup-form/#viewSource">view  source</a></p>
<div><object id="highlighter_834389_clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="highlighterId=highlighter_834389" /><param name="src" value="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" /><param name="wmode" value="transparent" /><embed id="highlighter_834389_clipboard" type="application/x-shockwave-flash" width="16" height="16" src="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" wmode="transparent" flashvars="highlighterId=highlighter_834389"></embed></object></div>
<p><a title="print" href="http://tutorialzine.com/2010/04/carbon-signup-form/#printSource">print</a><a title="?" href="http://tutorialzine.com/2010/04/carbon-signup-form/#about">?</a></div>
</div>
<div>
<div>
<table>
<tbody>
<tr>
<td><code>01</code></td>
<td><code>#carbonForm{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>02</code></td>
<td><code> </code><code>/* The main form container */</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>03</code></td>
<td><code> </code><code>background-color</code><code>:</code><code>#1C1C1C</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>04</code></td>
<td><code> </code><code>border</code><code>:</code><code>1px</code> <code>solid</code> <code>#080808</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>05</code></td>
<td><code> </code><code>margin</code><code>:</code><code>20px</code> <code>auto</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>06</code></td>
<td><code> </code><code>padding</code><code>:</code><code>20px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>07</code></td>
<td><code> </code><code>width</code><code>:</code><code>500px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>08</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>09</code></td>
<td><code> </code><code>-moz-box-shadow:</code><code>0</code> <code>0</code> <code>1px</code> <code>#444</code> <code>inset</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>10</code></td>
<td><code> </code><code>-webkit-box-shadow:</code><code>0</code> <code>0</code> <code>1px</code> <code>#444</code> <code>inset</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>11</code></td>
<td><code> </code><code>box-shadow:</code><code>0</code> <code>0</code> <code>1px</code> <code>#444</code> <code>inset</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>12</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>13</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>14</code></td>
<td><code>.fieldContainer{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>15</code></td>
<td><code> </code><code>/* The light rounded section, which contans the fields */</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>16</code></td>
<td><code> </code><code>background-color</code><code>:</code><code>#1E1E1E</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>17</code></td>
<td><code> </code><code>border</code><code>:</code><code>1px</code> <code>solid</code> <code>#0E0E0E</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>18</code></td>
<td><code> </code><code>padding</code><code>:</code><code>30px</code> <code>10px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>19</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>20</code></td>
<td><code> </code><code>/* CSS3 box shadow, used as an inner glow */</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>21</code></td>
<td><code> </code><code>-moz-box-shadow:</code><code>0</code> <code>0</code> <code>20px</code> <code>#292929</code> <code>inset</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>22</code></td>
<td><code> </code><code>-webkit-box-shadow:</code><code>0</code> <code>0</code> <code>20px</code> <code>#292929</code> <code>inset</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>23</code></td>
<td><code> </code><code>box-shadow:</code><code>0</code> <code>0</code> <code>20px</code> <code>#292929</code> <code>inset</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>24</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>25</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>26</code></td>
<td><code>#carbonForm,.fieldContainer,.errorTip{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>27</code></td>
<td><code> </code><code>/* Rounding the divs at once */</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>28</code></td>
<td><code> </code><code>-moz-border-radius:</code><code>12px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>29</code></td>
<td><code> </code><code>-webkit-border-radius:</code><code>12px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>30</code></td>
<td><code> </code><code>border-radius:</code><code>12px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>31</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>32</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>33</code></td>
<td><code>.formRow{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>34</code></td>
<td><code> </code><code>height</code><code>:</code><code>35px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>35</code></td>
<td><code> </code><code>padding</code><code>:</code><code>10px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>36</code></td>
<td><code> </code><code>position</code><code>:</code><code>relative</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>37</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>38</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>39</code></td>
<td><code>.label{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>40</code></td>
<td><code> </code><code>float</code><code>:</code><code>left</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>41</code></td>
<td><code> </code><code>padding</code><code>:</code><code>0</code> <code>20px</code> <code>0</code> <code>0</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>42</code></td>
<td><code> </code><code>text-align</code><code>:</code><code>right</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>43</code></td>
<td><code> </code><code>width</code><code>:</code><code>70px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>44</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>45</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>46</code></td>
<td><code>label{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>47</code></td>
<td><code> </code><code>font-family</code><code>:Century  Gothic,Myriad Pro,</code><code>Arial</code><code>,</code><code>Helvetica</code><code>,</code><code>sans-serif</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>48</code></td>
<td><code> </code><code>font-size</code><code>:</code><code>11px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>49</code></td>
<td><code> </code><code>letter-spacing</code><code>:</code><code>1px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>50</code></td>
<td><code> </code><code>line-height</code><code>:</code><code>35px</code><code>; </code><code>/* Neat line height trick */</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>51</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>52</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>53</code></td>
<td><code>.field{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>54</code></td>
<td><code> </code><code>float</code><code>:</code><code>left</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>55</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>56</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>57</code></td>
<td><code>.field input{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>58</code></td>
<td><code> </code><code>/* The text boxes */</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>59</code></td>
<td><code> </code><code>border</code><code>:</code><code>1px</code> <code>solid</code> <code>white</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>60</code></td>
<td><code> </code><code>color</code><code>:</code><code>#666666</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>61</code></td>
<td><code> </code><code>font-family</code><code>:</code><code>Arial</code><code>,</code><code>Helvetica</code><code>,</code><code>sans-serif</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>62</code></td>
<td><code> </code><code>font-size</code><code>:</code><code>22px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>63</code></td>
<td><code> </code><code>padding</code><code>:</code><code>4px</code> <code>5px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>64</code></td>
<td><code> </code><code>background</code><code>:</code><code>url</code><code>(</code><code>"img/box_bg.png"</code><code>) </code><code>repeat-x</code> <code>scroll</code> <code>left</code> <code>top</code> <code>#FFFFFF</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>65</code></td>
<td><code> </code><code>outline</code><code>:</code><code>none</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>66</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>67</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>68</code></td>
<td><code>#submit{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>69</code></td>
<td><code> </code><code>/* The submit button */</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>70</code></td>
<td><code> </code><code>border</code><code>:</code><code>1px</code> <code>solid</code> <code>#f4f4f4</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>71</code></td>
<td><code> </code><code>cursor</code><code>:</code><code>pointer</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>72</code></td>
<td><code> </code><code>height</code><code>:</code><code>40px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>73</code></td>
<td><code> </code><code>text-indent</code><code>:</code><code>-9999px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>74</code></td>
<td><code> </code><code>text-transform</code><code>:</code><code>uppercase</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>75</code></td>
<td><code> </code><code>width</code><code>:</code><code>110px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>76</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>77</code></td>
<td><code> </code><code>background</code><code>:</code><code>url</code><code>(</code><code>"img/submit.png"</code><code>) </code><code>no-repeat</code> <code>center</code> <code>center</code> <code>#d0ecfd</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>78</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>79</code></td>
<td><code> </code><code>-moz-border-radius:</code><code>6px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>80</code></td>
<td><code> </code><code>-webkit-border-radius:</code><code>6px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>81</code></td>
<td><code> </code><code>border-radius:</code><code>6px</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>82</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>83</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>84</code></td>
<td><code>#submit.active{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>85</code></td>
<td><code> </code><code>/* Marking the submit button as active adds the preloader gif  as background */</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>86</code></td>
<td><code> </code><code>background-image</code><code>:</code><code>url</code><code>(</code><code>"img/preloader.gif"</code><code>);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>87</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>88</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>89</code></td>
<td><code>input:hover,</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>90</code></td>
<td><code>input:focus{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>91</code></td>
<td><code> </code><code>/* CSS3 glow effect */</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>92</code></td>
<td><code> </code><code>-moz-box-shadow:</code><code>0</code> <code>0</code> <code>8px</code> <code>lightblue;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>93</code></td>
<td><code> </code><code>-webkit-box-shadow:</code><code>0</code> <code>0</code> <code>8px</code> <code>lightblue;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>94</code></td>
<td><code> </code><code>box-shadow:</code><code>0</code> <code>0</code> <code>8px</code> <code>lightblue;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>95</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<p>Most of these rules are pretty straightforward. You may find  interesting how we handle the submit button, as this element is quite  tricky to style consistently cross-browser.</p>
<p>To hide the text of the button (in our case “<em>Signup</em>“), we  can use the <strong>negative text-indent</strong> trick, but in IE it  only works if we also specify the <strong>text-transform:uppercase</strong> rule. We also add a transparent background image consisting of the text  “<em>Submit</em>” in <em>Century Gothic</em>, which is replaced with a  rotating gif preloader if the button is assigned an “<em>active</em>”  class.</p>
<p>We also use a number of CSS3 effects along with their vendor-specific  versions for better compatibility. <strong>border-radius</strong> is  for rounded corners, and with <strong>box-shadow</strong> we can mimic  different glow and shadow effects.</p>
<div id="attachment_838"><a href="http://tutorialzine.com/wp-content/uploads/2010/04/i2.png"><img title="CSS3 Rounded Corners &amp; Glow" src="http://tutorialzine.com/wp-content/uploads/2010/04/i2.png" alt="CSS3 Rounded Corners &amp; Glow" width="620" height="260" /></a>CSS3 Rounded Corners &amp; Glow</p>
</div>
<h3>Step 3 – jQuery</h3>
<p>After including the jQuery library and our own <strong>script.js</strong> file in the page, we can move on to writing the JavaScript code that  will breathe some life into the form.</p>
<h4>script.js</h4>
<div id="highlighter_178157">
<div>
<div><a title="view  source" href="http://tutorialzine.com/2010/04/carbon-signup-form/#viewSource">view  source</a></p>
<div><object id="highlighter_178157_clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="highlighterId=highlighter_178157" /><param name="src" value="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" /><param name="wmode" value="transparent" /><embed id="highlighter_178157_clipboard" type="application/x-shockwave-flash" width="16" height="16" src="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" wmode="transparent" flashvars="highlighterId=highlighter_178157"></embed></object></div>
<p><a title="print" href="http://tutorialzine.com/2010/04/carbon-signup-form/#printSource">print</a><a title="?" href="http://tutorialzine.com/2010/04/carbon-signup-form/#about">?</a></div>
</div>
<div>
<div>
<table>
<tbody>
<tr>
<td><code>01</code></td>
<td><code>$(document).ready(</code><code>function</code><code>(){</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>02</code></td>
<td><code> </code><code>// $(document).ready() is executed after the page DOM id  loaded</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>03</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>04</code></td>
<td><code> </code><code>// Binding an listener to the submit event on the form:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>05</code></td>
<td><code> </code><code>$(</code><code>'#signupForm'</code><code>).submit(</code><code>function</code><code>(e){</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>06</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>07</code></td>
<td><code> </code><code>// If a  previous submit is in progress:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>08</code></td>
<td><code> </code><code>if</code><code>($(</code><code>'#submit'</code><code>).hasClass(</code><code>'active'</code><code>)) </code><code>return</code> <code>false</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>09</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>10</code></td>
<td><code> </code><code>// Adding  the active class to the button. Will show the preloader gif:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>11</code></td>
<td><code> </code><code>$(</code><code>'#submit'</code><code>).addClass(</code><code>'active'</code><code>);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>12</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>13</code></td>
<td><code> </code><code>// Removing  the current error tooltips</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>14</code></td>
<td><code> </code><code>$(</code><code>'.errorTip'</code><code>).remove();</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>15</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>16</code></td>
<td><code> </code><code>// Issuing a  POST ajax request to submit.php (the action attribute of the form):</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>17</code></td>
<td><code> </code><code>$.post($(</code><code>'#signupForm'</code><code>).attr(</code><code>'action'</code><code>),</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>18</code></td>
<td><code> </code><code>$(</code><code>'#signupForm'</code><code>).serialize()+</code><code>'&amp;fromAjax=1'</code><code>,</code><code>function</code><code>(response){</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>19</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>20</code></td>
<td><code> </code><code>if</code><code>(!response.status)</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>21</code></td>
<td><code> </code><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>22</code></td>
<td><code> </code><code>// Some kind of input error occured</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>23</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>24</code></td>
<td><code> </code><code>//  Looping through all the input text boxes,</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>25</code></td>
<td><code> </code><code>// and checking whether they produced an error</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>26</code></td>
<td><code> </code><code>$(</code><code>'input[type!=submit]'</code><code>).each(</code><code>function</code><code>(){</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>27</code></td>
<td><code> </code><code>var</code> <code>elem = $(</code><code>this</code><code>);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>28</code></td>
<td><code> </code><code>var</code> <code>id =  elem.attr(</code><code>'id'</code><code>);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>29</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>30</code></td>
<td><code> </code><code>if</code><code>(response[id])</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>31</code></td>
<td><code> </code><code>showTooltip(elem,response[id]);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>32</code></td>
<td><code> </code><code>});</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>33</code></td>
<td><code> </code><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>34</code></td>
<td><code> </code><code>else</code> <code>location.replace(response.redirectURL);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>35</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>36</code></td>
<td><code> </code><code>$(</code><code>'#submit'</code><code>).removeClass(</code><code>'active'</code><code>);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>37</code></td>
<td><code> </code><code>},</code><code>'json'</code><code>);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>38</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>39</code></td>
<td><code> </code><code>e.preventDefault();</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>40</code></td>
<td><code> </code><code>});</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>41</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>42</code></td>
<td><code> </code><code>$(window).resize();</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>43</code></td>
<td><code>});</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>44</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>45</code></td>
<td><code>// Centering the form vertically on every  window resize:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>46</code></td>
<td><code>$(window).resize(</code><code>function</code><code>(){</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>47</code></td>
<td><code> </code><code>var</code> <code>cf = $(</code><code>'#carbonForm'</code><code>);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>48</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>49</code></td>
<td><code> </code><code>$(</code><code>'#carbonForm'</code><code>).css(</code><code>'margin-top'</code><code>,($(window).height()-cf.outerHeight())/2)</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>50</code></td>
<td><code>});</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>51</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>52</code></td>
<td><code>// Helper function that creates an error  tooltip:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>53</code></td>
<td><code>function</code> <code>showTooltip(elem,txt)</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>54</code></td>
<td><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>55</code></td>
<td><code> </code><code>// elem is the text box, txt is the error text</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>56</code></td>
<td><code> </code><code>$(</code><code>'&lt;div  class="errorTip"&gt;'</code><code>).html(txt).appendTo(elem.closest(</code><code>'.formRow'</code><code>));</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>57</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<p>Clicking the submit button (or pressing the <em>enter </em>key while  entering text in one of the fields) submits the form. The function that  is bound to the submit event prevents this from happening with <strong>e.preventDefault()</strong> and issues an AJAX request to <strong>submit.php</strong> instead.</p>
<p>The response that is returned is evaluated as JSON code (a JavaScript  object), which contains a special <strong>status </strong>property.  Depending on its value, the script either shows error tooltips on the  fields, or redirects the browser to the specified URL in the response.</p>
<h4>sample error response</h4>
<div id="highlighter_163685">
<div>
<div><a title="view source" href="http://tutorialzine.com/2010/04/carbon-signup-form/#viewSource">view  source</a></p>
<div><object id="highlighter_163685_clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="highlighterId=highlighter_163685" /><param name="src" value="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" /><param name="wmode" value="transparent" /><embed id="highlighter_163685_clipboard" type="application/x-shockwave-flash" width="16" height="16" src="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" wmode="transparent" flashvars="highlighterId=highlighter_163685"></embed></object></div>
<p><a title="print" href="http://tutorialzine.com/2010/04/carbon-signup-form/#printSource">print</a><a title="?" href="http://tutorialzine.com/2010/04/carbon-signup-form/#about">?</a></div>
</div>
<div>
<div>
<table>
<tbody>
<tr>
<td><code>1</code></td>
<td><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>2</code></td>
<td><code> </code><code>"status"</code> <code>: 0, </code><code>// Indicates that the response is an error</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>3</code></td>
<td><code> </code><code>"email"</code> <code>: </code><code>"Please fill in a valid email!"</code><code>, </code><code>//  Error message</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>4</code></td>
<td><code> </code><code>"pass"</code> <code>: </code><code>"Please fill in a valid password!"</code> <code>// Error message</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>5</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<p>The error tooltips are generated by the script while looping though  all the fields in the form and checking whether their ids exist as  properties in the response object. If they do, a tooltip is created with  the <strong>showTooltip()</strong> function.</p>
<p>Also notice how we use the <strong>serialize()</strong> method on  line 18 to send all the form fields at once. Also, on this same line, we  set <strong>fromAjax=1</strong>, which is going to tell PHP to return  the response as JSON.</p>
<p>Now lets see how this response is generated and how the form is   validated.</p>
<div id="attachment_839"><a href="http://tutorialzine.com/wp-content/uploads/2010/04/i3.png"><img title="Dynamically Inserted Error  Tooltips" src="http://tutorialzine.com/wp-content/uploads/2010/04/i3.png" alt="Dynamically Inserted Error Tooltips" width="620" height="260" /></a>Dynamically Inserted Error Tooltips</p>
</div>
<h3>Step 4 – PHP</h3>
<p>The good thing about this form is that it is usable even if  JavaScript is disabled. This works, because the action attribute of the  form element is also set to <strong>submit.php</strong>. This means that  we only have to implement the validation once no matter how the form is  sent.</p>
<h4>submit.php</h4>
<div id="highlighter_584974">
<div>
<div><a title="view source" href="http://tutorialzine.com/2010/04/carbon-signup-form/#viewSource">view  source</a></p>
<div><object id="highlighter_584974_clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="highlighterId=highlighter_584974" /><param name="src" value="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" /><param name="wmode" value="transparent" /><embed id="highlighter_584974_clipboard" type="application/x-shockwave-flash" width="16" height="16" src="http://tutorialzine.com/wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/clipboard.swf" wmode="transparent" flashvars="highlighterId=highlighter_584974"></embed></object></div>
<p><a title="print" href="http://tutorialzine.com/2010/04/carbon-signup-form/#printSource">print</a><a title="?" href="http://tutorialzine.com/2010/04/carbon-signup-form/#about">?</a></div>
</div>
<div>
<div>
<table>
<tbody>
<tr>
<td><code>01</code></td>
<td><code>// Error reporting:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>02</code></td>
<td><code>error_reporting</code><code>(E_ALL^E_NOTICE);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>03</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>04</code></td>
<td><code>// This is the URL your users are redirected,</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>05</code></td>
<td><code>// when registered  succesfully:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>06</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>07</code></td>
<td><code>$redirectURL</code> <code>= </code><code>'<a href="http://demo.tutorialzine.com/2010/04/carbon-signup-form/demo.html">http://demo.tutorialzine.com/2010/04/carbon-signup-form/demo.html</a>'</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>08</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>09</code></td>
<td><code>$errors</code> <code>= </code><code>array</code><code>();</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>10</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>11</code></td>
<td><code>// Checking the input data and adding potential errors to the  $errors array:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>12</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>13</code></td>
<td><code>if</code><code>(!</code><code>$_POST</code><code>[</code><code>'name'</code><code>] || </code><code>strlen</code><code>(</code><code>$_POST</code><code>[</code><code>'name'</code><code>])&lt;3 || </code><code>strlen</code><code>(</code><code>$_POST</code><code>[</code><code>'name'</code><code>])&gt;50)</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>14</code></td>
<td><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>15</code></td>
<td><code> </code><code>$errors</code><code>[</code><code>'name'</code><code>]=</code><code>'Please fill in a valid name!&lt;br /&gt;Must be between 3 and  50 characters.'</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>16</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>17</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>18</code></td>
<td><code>if</code><code>(!</code><code>$_POST</code><code>[</code><code>'email'</code><code>] || !preg_match(</code><code>"/^[\.A-z0-9_\-\+]+[@][A-z0-9_\-]+([.][A-z0-9_\-]+)+[A-z]{1,4}$/"</code><code>, </code><code>$_POST</code><code>[</code><code>'email'</code><code>]))</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>19</code></td>
<td><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>20</code></td>
<td><code> </code><code>$errors</code><code>[</code><code>'email'</code><code>]=</code><code>'Please fill in a valid email!'</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>21</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>22</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>23</code></td>
<td><code>if</code><code>(!</code><code>$_POST</code><code>[</code><code>'pass'</code><code>] || </code><code>strlen</code><code>(</code><code>$_POST</code><code>[</code><code>'pass'</code><code>])&lt;5)</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>24</code></td>
<td><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>25</code></td>
<td><code> </code><code>$errors</code><code>[</code><code>'pass'</code><code>]=</code><code>'Please fill in a valid password!&lt;br /&gt;Must be at least 5  characters long.'</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>26</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>27</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>28</code></td>
<td><code>// Checking whether the request was sent via AJAX</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>29</code></td>
<td><code>// (we manually send the  fromAjax var with the AJAX request):</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>30</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>31</code></td>
<td><code>if</code><code>(</code><code>$_POST</code><code>[</code><code>'fromAjax'</code><code>])</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>32</code></td>
<td><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>33</code></td>
<td><code> </code><code>if</code><code>(</code><code>count</code><code>(</code><code>$errors</code><code>))</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>34</code></td>
<td><code> </code><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>35</code></td>
<td><code> </code><code>$errString</code> <code>= </code><code>array</code><code>();</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>36</code></td>
<td><code> </code><code>foreach</code><code>(</code><code>$errors</code> <code>as</code> <code>$k</code><code>=&gt;</code><code>$v</code><code>)</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>37</code></td>
<td><code> </code><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>38</code></td>
<td><code> </code><code>// The name  of the field that caused the error, and the</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>39</code></td>
<td><code> </code><code>// error text are grouped as key/value pair for the  JSON response:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>40</code></td>
<td><code> </code><code>$errString</code><code>[]=</code><code>'"'</code><code>.</code><code>$k</code><code>.</code><code>'":"'</code><code>.</code><code>$v</code><code>.</code><code>'"'</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>41</code></td>
<td><code> </code><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>42</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>43</code></td>
<td><code> </code><code>// JSON error response:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>44</code></td>
<td><code> </code><code>die</code> <code>(</code><code>'{"status":0,'</code><code>.join(</code><code>','</code><code>,</code><code>$errString</code><code>).</code><code>'}'</code><code>);</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>45</code></td>
<td><code> </code><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>46</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>47</code></td>
<td><code> </code><code>// JSON success  response. Returns the redirect URL:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>48</code></td>
<td><code> </code><code>echo</code> <code>'{"status":1,"redirectURL":"'</code><code>.</code><code>$redirectURL</code><code>.</code><code>'"}'</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>49</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>50</code></td>
<td><code> </code><code>exit</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>51</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>52</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>53</code></td>
<td><code>// If the request was not sent via AJAX (probably JavaScript</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>54</code></td>
<td><code>// has been disabled in the  visitors' browser):</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>55</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>56</code></td>
<td><code>if</code><code>(</code><code>count</code><code>(</code><code>$errors</code><code>))</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>57</code></td>
<td><code>{</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>58</code></td>
<td><code> </code><code>echo</code> <code>'&lt;h2&gt;'</code><code>.join(</code><code>'&lt;br  /&gt;&lt;br /&gt;'</code><code>,</code><code>$errors</code><code>).</code><code>'&lt;/h2&gt;'</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>59</code></td>
<td><code> </code><code>exit</code><code>;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>60</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>61</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>62</code></td>
<td><code>// Directly redirecting the visitor if JS is disabled:</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>63</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>64</code></td>
<td><code>header(</code><code>"Location: "</code><code>.</code><code>$redirectURL</code><code>);</code></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<p>All the encountered errors are added to the <strong>$errors</strong> array. This, depending on whether <strong>fromAjax</strong> was set or  not,  is later returned either as a JSON object, or directly printed to  the screen.</p>
<p>With this our carbon fiber signup form is complete!</p>
<h3>Conclusion</h3>
<p>You can modify and build upon this form any way you like. At present,  the form does not actually register users, but you can add the code  necessary to do so. It will also do a great job as a contact form for  your site.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.astagramstudios.com/blog/tutorial/signup-form-with-php-jquery-and-css3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Guide to Google Analytics and Useful Tools</title>
		<link>http://www.astagramstudios.com/blog/tutorial/a-guide-to-google-analytics-and-useful-tools/</link>
		<comments>http://www.astagramstudios.com/blog/tutorial/a-guide-to-google-analytics-and-useful-tools/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 13:07:38 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://www.astagramstudios.com/blog/?p=543</guid>
		<description><![CDATA[Google Analytics is undoubtedly the most widely used web analytics application. Emerged from and based upon the analytics-package developed by Urchin Software Corporation (which was bought by Google in April 2005), the tool has become publicly available for free under the new flagship of Google Analytics. In May 2007 the application was heavily edited, developed<a href="http://www.astagramstudios.com/blog/tutorial/a-guide-to-google-analytics-and-useful-tools/">&#160;&#160;[ Read More ]</a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.google.com/analytics/">Google Analytics</a> is  undoubtedly the most widely used web analytics application. Emerged from  and based upon the analytics-package developed by Urchin Software  Corporation (which was bought by Google in April 2005), the tool has  become publicly available for free under the new flagship of Google  Analytics. In May 2007 the application was heavily edited, developed and  released; the design was simplified and more advanced featured were  added. Over years Google Analytics managed to gain on popularity because  of its simplicity and many advanced features for curious site owners  and professional marketers.</p>
<p><a href="http://www.google.com/analytics/"><img src="http://media.smashingmagazine.com/cdn_smash/images/analytics/ga-logo.gif" alt="Ga-logo in A Guide to Google Analytics and Useful Tools" width="236" height="71" /></a></p>
<p>You probably use Google Analytics on a  regular basis, for basic stats tracking the performance of your site.  And, just like most GA users, you probably very rarely venture far from  the comfort of the reports shown on the dashboard. That’s all the  analytical information you need, you may be thinking … or is it?</p>
<p>Did  you know that <strong>Google Analytics can generate up to 85 different  reports</strong> that will help you analyze all possible data about your  website traffic. It not only tracks visitors to your site or the number  of page views, it can be used to see which content gets the most  visits, time on site per visit, which ads are driving the most visitors  to your site, it track the performances of your marketing campaigns,  including AdWords, Adsense and emails and much, much more.</p>
<p>This  post is not a be-all-and-end-all look at GA, but a rough guide to its  many under-used features and reports. It is an easy to read guide that  will help you understand and use the full power of Google Analytics.  Honestly, it’s not that daunting.</p>
<p>General resources: <a href="http://www.google.com/support/analytics/?hl=en">Google Analytics  Help Center</a>, <a href="http://www.google.com/support/forum/p/Google+Analytics/?hl=en">official  forum</a> and <a href="http://analytics.blogspot.com/">official blog</a>.</p>
<p>You  may be interested in the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2009/07/08/perform-better-with-google-adsense-the-ultimate-round-up/">Perform  Better With AdSense: The Ultimate Round-Up</a></li>
</ul>
<p>[By the way,  did you know there is a brand new <a href="http://creatives.commindo-media.de/www/delivery/ck.php?oaparams=2__bannerid=1339__zoneid=0__cb=a279a7c66d__oadest=http%3A%2F%2Fshop.smashingmagazine.com%2Fsmashingbook-dispatcher.php%3Fd%3Dsmashing-wordpress%26utm_source%3DSmashing%252BMagazine%26utm_medium%3Deditorialbox2%26utm_campaign%3DSmashing%252BWordPress%2520-%2520BTW%2520Editorial%2520Box">Smashing  WordPress Book</a>? Push WordPress past its limits!]</p>
<h3>The GA  Tracking Code</h3>
<p>Google Analytics will only track pages that contain  the Google Analytics tracking code, this is a small Javascript snippet  that needs to be added to each page of your site, either manually or  through the use of plugins or tool. You will find some tools and plugins  to help you do this near the bottom of this post.</p>
<p>For a static  webpage or if you want to manually install the code into your pages,  copy and paste the code segment into the bottom of your content,  immediately before the <em>body</em> tag of each page that you wish to  track.</p>
<p><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/trackcode.jpg" alt="Trackcode in A Guide to Google Analytics and Useful Tools" width="479" height="225" /></p>
<h4>To access your tracking code</h4>
<ul>
<li>Sign  in to Google Analytics.</li>
<li>From the Analytics Settings page, find  the profile for which you would like to retrieve the tracking code.  Please note that tracking code is profile-specific.</li>
<li>From that  profile’s Settings column, click Edit.</li>
<li>At the top right of the  Main Website Profile Information box, click Check Status.</li>
<li>Your  tracking code can be copied and pasted from the text box in the  Instructions for adding tracking section.</li>
</ul>
<h3>The Dashboard and  Analytical Reports</h3>
<p>Log into Google Analytics and you’ll arrive  at dashboard, the central hub that gives you an overview of all the  popular reports (visitors, content, traffic sources and the cool map  overlay) generated by Google Analytics. You can customize this page by  changing what reports are shown, as well as dragging and dropping the  reports into a format that suits your needs.</p>
<p><a href="http://www.youtube.com/watch?v=3KK7i084W2w&amp;feature=player_embedded">Google  Analytics Interface Tutorial</a><br />
A brief overview of how to use the  Google Analytics interface. If you are new to Google Analytics or you’d  like to pick up a few tips on how to use some of the different  features, this video is a good place to start.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/3KK7i084W2w&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/3KK7i084W2w&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<h4>Interpreting  Reports</h4>
<p><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/breezepres.jpg" alt="Breezepres in A Guide to Google Analytics and Useful Tools" width="452" height="267" /></p>
<p>Google offers comprehensive tutorials  and guides to using Analytics, in the form of a series of Adobe Breeze  Presentations. Below you will find the guides and presentations to  understanding and using the reports generated by GA.</p>
<p><a href="http://services.google.com/analytics/breeze/en/interpreting_reports_guidelines/index.html">Guidelines  to interpreting GA Reports</a><br />
In this presentation you will learn  the best practices for analyzing data, how to analyze data trends and  how to use the data visualizations in Google Analytics.</p>
<p><a href="http://services.google.com/analytics/breeze/en/interpreting_reports_visits/index.html">Pageviews,  Visits, and Visitors</a><br />
Learn where to find Pageviews, Visits, and  Visitors metrics, how Pageviews, Visits, and Visitors are calculated,  the difference between Pageviews and Unique Pageviews and the difference  between Absolute Unique Visitors and New vs. Returning Visitors.</p>
<p><a href="http://services.google.com/analytics/breeze/en/interpreting_reports_time/index.html">Time  Metrics</a><br />
How Time on Page and Time on Site are calculated, how  Avg. Time on Page and Avg. Time on Site are calculated and learn about  the Length of Visit report from this presentation.</p>
<p><a href="http://services.google.com/analytics/breeze/en/interpreting_reports_trafficsources/index.html">Traffic  Sources</a><br />
Learn about the different kinds of traffic sources, how  to identify quality traffic, how to identify revenue and conversion  drivers, what kinds of information to look for in keyword reports, how  campaign attribution works in Google Analytics</p>
<p><a href="http://services.google.com/analytics/breeze/en/interpreting_reports_trafficsources/index.html">Content  Reports</a><br />
How to use and interpret the Top Content, Content by  Title, and Content Drilldown reports; how to use the Top Landing Pages  report; how to use and interpret the Navigation Summary report; how to  use and interpret the Entrance Paths report.</p>
<p><a href="http://www.youtube.com/watch?v=zOFWpTmy7jg&amp;feature=player_embe">Analyze  Traffic Sources, Content, and Navigation</a><br />
Use your Google  Traffic Sources, Content, and Navigation reports effectively. In this  video you will see the different sources of traffic, tracking content  performance and analyzing visitor navigation.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/zOFWpTmy7jg&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/zOFWpTmy7jg&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<h3>Analytics  and Flash and Flex Content</h3>
<p>One of the most common Google  Analytic implementation challenges has been tracking Flash content. In  the past, Flash tracking was not provided out of the box, and every  implementation had to be tailored to each individual site, developers  who tracked Flash had to create their own processes to get it working.</p>
<p>Google  now provides easy to implement tracking libraries for both Flash and  Flex, the libraries include: Flash visual component, Flash AS3 library,  Flex MXML component and Flex AS3 library.<br />
Download: <a href="http://code.google.com/p/gaforflash/downloads/list">Flash and Flex  Analytics Tracking Libraries</a>.<br />
Documentation: <a href="http://code.google.com/apis/analytics/docs/flashTrackingIntro.html">Developer  Documentation</a>.</p>
<p>Learn how easy it is to track Flash content  using the new Google Analytics Tracking For Adobe Flash.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/wXdV4LnF3v8&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/wXdV4LnF3v8&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<h3>Analytics  and Ecommerce</h3>
<p>After you have enabled ecommerce transactions,  Google Analytics will generate very detailed reports about every single  transaction</p>
<p><strong>Tracking Ecommerce with Google Analytics</strong><br />
By using Google Analytics with your Ecommerce website, you can gain  valuable insights about your transactions, ROI, and customers.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/_lOlbtkTY2Y&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/_lOlbtkTY2Y&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<h4>Step-by-Step  to enabling Ecommerce Reporting</h4>
<p>The first step of tracking  ecommerce transactions is to enable e-commerce reporting for your  website’s profile.</p>
<ul>
<li>Log in to your account.</li>
<li>Click Edit  next to the profile you’d like to enable.</li>
<li>On the Profile  Settings page, click edit next to Main Website Profile Information.</li>
<li>Change  the E-Commerce Website radio button from No to Yes.</li>
</ul>
<h3>Analytical  Goals</h3>
<p>As a simplified explanation, Goals are only a page view,  nothing complicated about that. If you define a goal in Google  Analytics, you are telling it what page view constitutes the completion  of a Goal, and Analytics then tracks it. It is an easier way to generate  the reports that you need as well as a great way to measure your  business objectives.</p>
<p><a href="http://www.youtube.com/watch?v=S5XpYm-B5Fs&amp;feature=player_embedded">How  to create Google Analytics Conversion Goals</a><br />
In this video you  will be shown how to create conversion goals in Google Analytics.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/S5XpYm-B5Fs&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/S5XpYm-B5Fs&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<h4>Step-by-Step  to setting up Goals in Analytics</h4>
<ol>
<li>Log in to your Google  Analytics account at <a href="https://www.google.com/analytics/">https://www.google.com/analytics/</a>.</li>
<li>Select  the account that contains the profile you’ll be creating goals in from  the <strong>Overview</strong> page.Find the profile for which you will  be creating goals, and click ‘Edit’ under the ‘Actions’ column.</li>
<li>Under  the ‘Conversion Goals and Funnel’ section, select one of the four goal  slots available for that profile and click ‘Edit.’</li>
<li>Turn the goal  ‘On’ or ‘Off.’ If you choose ‘On,’ that means you want Google Analytics  should track this conversion goal at this time. Since there are no ways  of deleting goals, turning it ‘Off’ can make the goal inactive.</li>
<li>Select  from one of the <a href="http://www.smashingmagazine.com/2009/07/16/a-guide-to-google-analytics-and-useful-tools/answer.py?answer=72285">three  match types</a> that Google Analytics uses to identify the goal.</li>
<li>Enter  the Request URI in the Goal URL box. Reaching this page marks a  successful conversion. For example, a registration confirmation page, a  checkout complete page, or a thank you page.</li>
<li>Enter the ‘Goal  name’ as it should appear in your Google Analytics account.</li>
<li>If  your goal URL is case sensitive, this means your goal URLs are  capitalized exactly like the visited goal URLs.</li>
<li>Enter the ‘Goal  value.’</li>
</ol>
<p><a href="http://www.webanalyticsworld.net/2009/03/10-must-track-google-analytics-goals.html">10  Must Track Google Analytics Goals</a><br />
The author of this article  gives you 10 ideas for using Analytics Goals. He advises to setup goals  for visitor comments on your blogs, social bookmarking actions,  newsletter subscriptions, track feed subscriptions… and much more.</p>
<p><a href="http://adwords.blogspot.com/2009/06/import-your-google-analytics-goals-into.html">Import  your Google Analytics Goals into AdWords and use them with Conversion  Optimizer</a><br />
In order to track your ROI from AdWords, you need to  be able to see which keywords, ads and campaigns lead to conversions on  your site. If you use Google Analytics, you can now import your Google  Analytics Goals and Transactions into your AdWords account to use as  conversion actions. This lets you track the ROI from your AdWords  campaigns directly inside the AdWords interface.</p>
<h3>Custom Reporting</h3>
<p>Custom  reports in Analytics give faster access to the information you need and  less data reports to sift through. Simply, they remove the data that is  relevant to you, leaving you with the bare bones reports that you need.  You choose the information and metrics you want to see, organized in  the way you want to see it.</p>
<h4>Quick Start Guide to Custom Reporting</h4>
<p>If  you are stepping into custom reporting you should really read this  official guide, from <a href="http://www.google.com/support/analytics/bin/answer.py?hl=en&amp;answer=98527">Google  Support</a>. You’ll learn to get from conceptualizing your custom  report to actually building it, and will give you a basic insight into  concepts and terminology involved in analytics and custom reporting.  Check out also <a href="http://www.google.com/support/analytics/bin/answer.py?hl=en&amp;answer=98527">Quick  Start Guide for Custom Reporting</a> and <a href="http://www.google.com/support/analytics/bin/topic.py?hl=en&amp;topic=11285">Google  Analytics Glossary</a></p>
<p><a href="http://www.youtube.com/watch?v=NGgl137x3Yw&amp;feature=player_embedded">Custom  Reporting in Analytics Video</a><br />
Learn how to create custom reports  in Google Analytics that show the information you want to see,  organized in the way you want to see it.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/NGgl137x3Yw&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/NGgl137x3Yw&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a href="http://conversionroom.blogspot.com/2009/05/spotlight-on-google-analytics-features_22.html">Spotlight  on Google Analytics features Custom Reporting</a><br />
<a href="http://conversionroom.blogspot.com/">Conversion Room</a> has  written a great overview on custom reporting.  It includes basic  tutorials and how-tos.</p>
<p><a href="http://analytics.blogspot.com/2009/01/eyes-on-prize-with-custom-reports.html">Eyes  on the Prize with Custom Reports</a><br />
This is an in-depth article  covering custom reporting in Analytics.</p>
<h3>Google Analytics, Adsense  and Adwords</h3>
<p>Google Analytics has lots of tools and can generate  reports that can help you with AdWords and Adsense campaigns.</p>
<p><a href="http://www.youtube.com/watch?v=UWxFqb5pa40&amp;feature=player_embedded">Adsense  Reporting in Google Analytics</a><br />
If you are an AdSense publisher,  you can use Google Analytics to see and perform in-depth analysis on  your AdSense data.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/UWxFqb5pa40&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/UWxFqb5pa40&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<h4>Step-by-step  guide to linking Adsense and Analytics</h4>
<ul>
<li>Log in to AdSense (<a href="https://adwsense.google.com/">adsense.google.com</a>).</li>
<li>Click  the link that says “<em>Integrate your AdSense account with Google  Analytics</em>” on the Reports &gt; Overview tab.</li>
<li>Follow the  on-screen instructions.</li>
</ul>
<h4>Campaign Tracking and AdWords  Integration (Breeze Presentation)</h4>
<p>This is an official lesson from  the Google Analytics IQ Lessons series, in this presentation you will  learn:</p>
<ul>
<li>how to track campaigns using tagged links</li>
<li>how  to track AdWords campaigns</li>
<li>when to use autotagging and how it  works</li>
<li>how to enable autotagging</li>
<li>where to find AdWords  data in your reports</li>
<li>the expected kinds of data discrepancies  between AdWords and Analytics data</li>
<li>when and how to manually tag  URLs</li>
<li>how to use the URL Builder</li>
<li>best practices for  tagging links</li>
</ul>
<p><a href="http://services.google.com/analytics/breeze/en/campaigntracking_adwordsintegration/index.html">Campaign  Tracking and AdWords Integration (Breeze Presentation)</a></p>
<p><a href="http://www.youtube.com/watch?v=9fQCWoJ0fm8&amp;feature=player_embedded">Linking  Adwords with Google Analytics</a><br />
Linking Google AdWords and  Analytics helps provide insights on keywords, ROI, visitors, and more!  Learn how to easily link your accounts.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/9fQCWoJ0fm8&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/9fQCWoJ0fm8&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<h4>Step-by-step  guide to linking AdWords and Analytics</h4>
<p>Below you will find the  simple step-by-step guide from <a href="http://www.google.com/support/analytics/bin/answer.py?hl=en&amp;answer=55507">Google  Support</a>.</p>
<ul>
<li>Login to your AdWords account at <a href="https://adwords.google.com/">adwords.google.com</a></li>
<li>Click  the Analytics tab.</li>
<li>If you don’t have an Analytics account, click  the Continue button to sign up for one.</li>
<li>If you already have an  Analytics account, click I already have a Google Analytics account.</li>
<li>From  the Existing Google Analytics Account drop-down list, select the name  of the Analytics account you’d like to link to. Can’t see it there?  You’ll need to add your AdWords username to your Analytics account as an  Account Admin ( Learn how).</li>
<li>Keep the checkboxes selected on  this page, unless you’re sure you’d like to disable auto-tagging and  cost data imports.</li>
<li>Click Link Account.</li>
</ul>
<p><a href="http://www.labnol.org/internet/google-analytics-adsense-reports-screenshots/4480/">Google  AdSense Reports in Analytics – Guide</a><br />
This article gives you a  basic guide to Adsense and Analytics, it covers top content, referrers,  revenue, trending and revenue sharing.</p>
<h3>Google Analytics Desktop  Apps</h3>
<p><a href="http://www.desktop-reporting.com/polaris.html">Polaris  for Google Analytics</a><br />
The sleek and stylish Polaris is the most  popular and quite possibly the best desktop application for Google  Analytics. It has been developed using Adobe AIR, making it  cross-platform desktop widget for Google Analytics. With 8 standard  reports available, you can view your stats instantly.</p>
<p><a href="http://www.desktop-reporting.com/polaris.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg1.jpg" alt="Gaimg1 in A Guide to Google Analytics and Useful Tools" width="470" height="280" /></a></p>
<p>Polaris is a free download for  everyone who manages one website profile, and for those who are managing  multiple profiles, the upgrade to the full version is $15 a year.</p>
<p><a href="http://www.softpedia.com/get/Internet/Search-engine-tools-submiting/Analytics-Reporting-Suite.shtml">Analytics  Reporting Suite</a><br />
This is another useful and feature rich Adobe  AIR app for Google Analytics. It uses it’s own custom API to interact  with Google and nearly implements all features of Analytics. With  Analytics Reporting Suite you can use multiple profiles from different  Analytics accounts, all popular reports (visitors, traffic and content)  are available and you can also view your goal values and data  segmentation.</p>
<p><a href="http://www.softpedia.com/get/Internet/Search-engine-tools-submiting/Analytics-Reporting-Suite.shtml"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg2.jpg" alt="Gaimg2 in A Guide to Google Analytics and Useful Tools" width="468" height="176" /></a></p>
<p><a href="http://dashalytics.rovingrob.com/">Dashalytics – MAC Dashboard  Widget</a><br />
Dashalytics is a free Dashboard Widget for your Apple Mac  that offers quick access to Google Analytics statistics.</p>
<p><a href="http://dashalytics.rovingrob.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg3.jpg" alt="Gaimg3 in A Guide to Google Analytics and Useful Tools" width="434" height="266" /></a></p>
<h3>Google Analytics Firefox Extensions</h3>
<p><a href="http://telega.phpnet.us/analytics/">Fire Analytics</a><br />
The  Fire Analytics extension allows you to view your Google Analytics  reports within a popup from Firefox.</p>
<p><a href="http://telega.phpnet.us/analytics/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg4.jpg" alt="Gaimg4 in A Guide to Google Analytics and Useful Tools" width="480" height="264" /></a></p>
<p><a href="http://www.twistermc.com/blog/2007/08/14/ga-extension/">Is Google  Analytics Installed</a><br />
This is a great little utility for web  developers, checks automatically that Google Analytics is installed on  any given page.</p>
<p><a href="http://www.twistermc.com/blog/2007/08/14/ga-extension/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg5.jpg" alt="Gaimg5 in A Guide to Google Analytics and Useful Tools" width="356" height="192" /></a></p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/4001">Web Analytics  Solution Profiler/Debugger (WASP)</a><br />
WASP provides detailed  information about the data being collected from Google Analytics,  through Query String and Cookies by web analytics solutions (called  “tags”, “trackers” or “web bug”), ad networks, behavioural targeting and  multivariate testing tools.</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/4001"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg6.jpg" alt="Gaimg6 in A Guide to Google Analytics and Useful Tools" width="480" height="250" /></a></p>
<h4>Grease Monkey Firefox Extensions</h4>
<p><a href="https://addons.mozilla.org/firefox/748/">Greasemonkey</a> is a  Firefox extension that allows you to customize the way webpages look and  function. You will need this extension to run the following useful  little scripts.</p>
<p><a href="http://www.roirevolution.com/blog/2008/06/google_analytics_report_enhancer.html">Google  Analytics Report Enhancer</a><br />
Better reports with <a href="http://www.drweb.de/magazin/greasemonkey-und-firefox-features-en-masse/">Greasemonkey</a></p>
<p><a href="http://spanishgringo.blogspot.com/2008/06/integrate-google-analytics-with-google.html">Integrate  Google Analytics with Google Docs using Greasemonkey</a></p>
<p><a href="http://www.juiceanalytics.com/writing/keyword-trends-google-analytics-greasemonkey/">Keyword  Trends in Google Analytics With Greasemonkey</a></p>
<p><a title="Automatically Show All Profiles in GA" rel="bookmark" href="http://www.lunametrics.com/blog/2008/06/12/automatically-show-all-profiles-in-ga/">Greasemonkey:  Automatically Show All Profiles</a></p>
<p><a href="http://blog.vkistudios.com/index.cfm/2008/10/6/Social-Media-Metrics-Greasemonkey-Plugin-For-Google-Analytics">Social  Media Metrics Greasemonkey Plugin For Google Analytics</a></p>
<p><a href="http://www.vkistudios.com/tools/firefox/betterga/index.cfm">Better  Google Analytics Firefox Extension</a><br />
Firefox Extension with  Greasemonkey Scripts for Google Analytics.</p>
<p><a href="http://erikvold.com/tools/firefox/betterga/index.cfm">The Better  Google Analytics Firefox Extension (BetterGA)</a><br />
BetterGA is a  compilation of the best Greasemonkey userscripts from various authors,  brought together to create this feature (Auto Access, Content Search,  Cleaner Profile Switching, Export to Google Docs…) rich extension.  Remember and install Greasemonkey first.</p>
<p><a href="http://erikvold.com/blog/index.cfm/2008/10/17/auto-access-your-google-analytics-account">Auto  Access Your Google Analytics Account</a><br />
Bypass the “Access  Analytics” button that is displayed to you on the Google Analytics login  page automatically.</p>
<p><a href="http://www.tysonkirksey.com/my-firefox-scripts/">Google Analytics  Full Screen Reports</a><br />
With this easy add-on, you can quickly  expand the reporting view by hiding the left-hand navigation.</p>
<p><a href="http://www.tysonkirksey.com/my-firefox-scripts/">Google Analytics  Advanced Date Selection</a><br />
With this script, an option is added for  one click access to year-over-year reports.</p>
<p><a href="http://www.storm-consultancy.com/blog/web-development/include-today-default-google-analytics-date-range/">Include  Today in the Default Google Analytics Date Range</a><br />
By default,  Google Analytics shows you the statistics for a 30 day period up to the  previous complete day. This Greasemonkey script includes the current in  all reports.</p>
<p><a href="http://andrescholten.nl/google-analytics-tabellen-sorteren-verbeterd/">Google  Analytics Table Sorter</a><br />
An easy to use table sorter for your  analytic reports.</p>
<p><a href="http://blog.vkistudios.com/index.cfm/2008/7/11/Add-digg-count-to-your-Content-Details-report-in-Google-Analytics">Add  the Digg count of your page to your Content Details</a><br />
This  Greasemonkey script will retrieve the Digg count of a page and display  it to you on the Content Detail report of your Google Analytics (?)  console.</p>
<p><a href="http://www.upian.net/maxime/dev/ga-referer/">Google  Analytics Referrers</a><br />
This user script adds an external link to  see referrers on Google Analytics.</p>
<h3>CMS &amp; Website Plugins  &amp; Extensions</h3>
<p><a href="http://silverlightanalytics.codeplex.com/">Silverlight Analytics</a><br />
SilverlightAnalytics lets you use the power of Google Analytics within  your Silverlight application. You can track web stats such as button  clicks, mouse-over’s, events, page views, or anything else you might  want without having to call Invoke().</p>
<p><a href="http://www.garterblue.com/t4ga/sample.html">Insert Google  Analytics’ code – Dreamweaver Extension</a><br />
This extension allows  you to Insert/Update, Remove, Report the Google Analytics’ Javascript  code(”urchin.js”) on any static website.</p>
<p><a href="http://www.garterblue.com/t4ga/sample.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg6b.jpg" alt="Gaimg6b in A Guide to Google Analytics and Useful Tools" width="480" height="250" /></a></p>
<h4>WordPress Plugins</h4>
<p><a href="http://plugins.spiralwebconsulting.com/analyticator.html">Google  Analyticator</a><br />
Google Analyticator is an easy to implement WP  plugin that adds Google Analytics tracking support to all WordPress  posts and pages. It comes with an easily customizable widget that can be  used to display specific information from the Google Analytics API.  It  supports all of the tracking mechanisms that Google Analytics supports  such as external link tracking, download tracking, tracking without  counting administrative users, and any other advanced tracking the user  wishes to add.</p>
<p><a href="http://plugins.spiralwebconsulting.com/analyticator.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg7.jpg" alt="Gaimg7 in A Guide to Google Analytics and Useful Tools" width="480" height="250" /></a></p>
<p><a href="http://yoast.com/wordpress/google-analytics/">Google Analytics for  WordPress</a><br />
This useful plugin adds the ability to tag and  segment all outgoing links, so you can see whether a click came from a  comment or an article. It also adds the possibility to track just the  domain, instead of the complete link, so you get a better view of how  much traffic you’re sending where.</p>
<p><a href="http://yoast.com/wordpress/google-analytics/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg8.jpg" alt="Gaimg8 in A Guide to Google Analytics and Useful Tools" width="480" height="250" /></a></p>
<p><a href="http://imthi.com/wp-analytics">Dashboard Reports Plugin</a><br />
Wordpress Google Analytics Reports plugin helps you to get real time  live reports from Google Analytics using the data API, and viewed from  the WordPress Dashboard.</p>
<p><a href="http://imthi.com/wp-analytics"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg9.jpg" alt="Gaimg9 in A Guide to Google Analytics and Useful Tools" width="480" height="250" /></a></p>
<p><a href="http://tantannoodles.com/toolkit/wordpress-reports/">Google  Analytics and Feedburner Reports Plugin</a><br />
This plugin allows you  to easily view quick and basic Google Analytics and Feedburner reports  in your WordPress admin area. It adds a top-level Reports tab and when  you click on it, you’ll get a quick 7 day overview of what’s going on  with your site (pageviews, visits, referrers, etc). You’ll have to login  to Google Analytics or Feedburner directly if you want more detailed  stats.</p>
<p><a href="http://tantannoodles.com/toolkit/wordpress-reports/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg10.jpg" alt="Gaimg10 in A Guide to Google Analytics and Useful Tools" width="480" height="345" /></a></p>
<h4>Drupal Module</h4>
<p><a href="http://drupal.org/project/google_analytics">Google Analytics  Module</a><br />
This powerful and feature rich Drupal module allows you  to add the following statistics features to your site: Selectively track  certain users, roles and pages; Monitor what type of links are tracked  (downloads, outgoing and mailto); Monitor what files are downloaded from  your pages; Cache the Google Analytics code on your local server for  improved page loading times; Track user segmentation from Drupal profile  data; Site Search support; AdSense support.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="319" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=4192499&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="425" height="319" src="http://vimeo.com/moogaloop.swf?clip_id=4192499&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a href="http://vimeo.com/4192499">Installing &amp; Configuring the Google  Analytics Module for Drupal 6.x</a> from <a href="http://vimeo.com/brianstevenson">Brian Stevenson</a> on <a href="http://vimeo.com/">Vimeo</a>.</p>
<h4>Joomla Module</h4>
<p><a href="http://www.estimetemplates.com/modules-for-joomla-cms.html">Google  Analytics Tracking Module</a><br />
Google Analytics Tracking Module is a  simple module for Joomla! 1.0.x. and Joomla! 1.5 used for inserting  Google Analytics tracking code into a Joomla site via a module. This  module makes it possible to add the tracking code before the closing  body tag in template, which is recommended by Google.</p>
<p><a href="http://www.estimetemplates.com/modules-for-joomla-cms.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg11.jpg" alt="Gaimg11 in A Guide to Google Analytics and Useful Tools" width="257" height="123" /></a></p>
<h3>Mobile Apps</h3>
<p><a href="http://analyticsapp.com/">Analytics App for iPhone and iPod Touch</a></p>
<p><a href="http://analyticsapp.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg12.jpg" alt="Gaimg12 in A Guide to Google Analytics and Useful Tools" width="472" height="342" /></a></p>
<p><a href="http://ego-app.com/">Ego —  You’re important</a></p>
<p><a href="http://ego-app.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg13.jpg" alt="Gaimg13 in A Guide to Google Analytics and Useful Tools" width="480" height="390" /></a></p>
<p><a href="http://www.iphone-analytics.de/faq.htm">myAnalytics – Google  Analytics on the iPhone</a></p>
<p><a href="http://www.iphone-analytics.de/faq.htm"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg14.jpg" alt="Gaimg14 in A Guide to Google Analytics and Useful Tools" width="320" height="438" /></a></p>
<p><a href="http://www.analyticsmarket.com/mobileapps/mobile-ga/android">Mobile  GA for Android</a><br />
Mobile GA for Android is a secure, fast and  lightweight application for accessing your Google Analytics data. The  app is intended to help you keep an eye on your key summary statistics  while you’re on the move. The price for this app is only $2.99.</p>
<p><a href="http://www.analyticsmarket.com/mobileapps/mobile-ga/android"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/gaimg15.jpg" alt="Gaimg15 in A Guide to Google Analytics and Useful Tools" width="494" height="244" /></a></p>
<h3>Google Analytics Tips and Ideas</h3>
<p><a href="http://blog.vkistudios.com/index.cfm/2009/6/5/The-Google-Analytics-Power-User-Guide">The  Google Analytics: Power User Guide</a><br />
This guide is a compilation  of VKI’s Google Analytics: Power User series, presenting an overview of  several key features and uses of Google analytics—some basic, some  advanced—and how you can use these features to analyze, interpret, and  optimize your websites traffic. Also available as <a href="http://blog.vkistudios.com/index.cfm/2009/6/5/The-Google-Analytics-Power-User-Guide">PDF</a>.</p>
<p><a href="http://www.makeuseof.com/tag/google-analytics-tips-you-should-know-about-for-your-blog/">Google  Analytics Tips You Should Know About</a>A round-up of six useful  resources, with some of the handiest Google Analytics tips out there,  starting from the simplest and moving on to trickier stuff.</p>
<p><a href="http://blog.kissmetrics.com/50-resources-for-getting-the-most-out-of-google-analytics/">50  Resources for Getting the Most Out of Google Analytics</a><br />
Google  Analytics is a very useful free tool for tracking site statistics. For  most users, however, it never becomes more than just a pretty interface  with interesting graphs. The resources below will help anyone, from the  beginner to those who have been using Google Analytics for some time,  learn how to get the most out of this great tool.</p>
<p><a href="http://www.searchenginejournal.com/the-huge-collection-of-google-analytics-tips/7426/">The  Huge Collection of Google Analytics Tips</a><br />
“I’ve been compiling  the list of advanced Google Analytics tips that  open up plenty of  possibilities to track and evaluate.”</p>
<p><a href="http://www.youtube.com/googleanalytics"> Youtube Channel</a><br />
The official channel for all videos about and related to Google  Analytics. 13 videos at this time.</p>
<p><a href="http://www.blogstorm.co.uk/advanced-google-analytics/4/">Advanced  use of Google Analytics and the new interface</a><br />
Since Google  Analytics was launched in 2005 it has become one of the  top analytics  packages for small to medium sized websites. Growth was  initially slow  due to the frustrating waiting list system initiated by  Google to avoid  over stretching their servers. Now that the waiting  list has been  removed anybody can sign up to use this great service.</p>
<p><a href="http://www.blogstorm.co.uk/advanced-google-analytics/4/"><img src="http://media.smashingmagazine.com/cdn_smash/images/analytics/ga3.gif" alt="Ga3 in A Guide to Google Analytics and Useful Tools" width="407" height="253" /></a></p>
<p><a title="Permanent Link to 8 Awesome Google  Analytics Hacks, Tips and Tricks" rel="bookmark" href="http://searchlightdigital.com/8-awesome-google-analytics-hacks-tips-and-tricks">8  Awesome Google Analytics Hacks, Tips and Tricks</a><br />
There are a lot  of things you need to tinker with in order to get some  of the data you  need from it.</p>
<p><a title="5 Lesser Known Google Analytics Features" rel="bookmark" href="http://www.toprankblog.com/2008/02/5-google-analytics-features/">5  Lesser Known Google Analytics Features</a><br />
Google Analytics is a  great program that can do a lot more than most  people realize. Here are  a few features that you may not know about.</p>
<p><a href="http://www.toprankblog.com/2008/02/5-google-analytics-features/"><img src="http://media.smashingmagazine.com/cdn_smash/images/analytics/google-analytics.png" alt="Google-analytics in A Guide to Google Analytics and Useful Tools" width="219" height="156" /></a></p>
<p><a title="Measure Online Advertising  with Google Analytics" rel="bookmark" href="http://www.thinkvitamin.com/features/biz/measure-online-advertising-with-google-analytics">Measure  Online Advertising with Google Analytics</a><br />
Google Analytics is a  free web analytics application that is quickly  becoming one of the most  widely used web analytics tools around. A  common misconception that  many people have is that GA can only be used  to track Google AdWords.  That’s simply not true. GA can be used to  track any online marketing  activity.</p>
<p><a title="Permanent Link to Forcing Google analytics to  show real time data" rel="bookmark" href="http://blogote.com/2008/ideas/forcing-google-analytics-to-show-real-time-data.html">Forcing  Google analytics to show real time data</a><br />
So here is how you can  get real-time data from Google analytics.</p>
<p><a title="Permanent  Link: Twitter and Google Analytics: What to Track" rel="bookmark" href="http://www.epikone.com/blog/2008/09/02/tracking-twitter/">Twitter  and Google Analytics: What to Track</a><br />
By default, traffic from  Twitter will be tracked as referral traffic in Google Analytics. A  better way to track a Twitter campaign would be to use GA’s campaign  tracking feature.</p>
<p><a href="http://www.epikone.com/blog/2008/09/02/tracking-twitter/"><img src="http://media.smashingmagazine.com/cdn_smash/images/analytics/phpkamz79pm.jpg" alt="Phpkamz79pm in A Guide to Google Analytics and Useful Tools" width="500" height="191" /></a></p>
<p><a title="Permanent Link: Tracking  Email with Google Analytics" rel="bookmark" href="http://www.epikone.com/blog/2008/11/04/email-tracking-with-google-analytics/">Tracking  Email with Google Analytics</a><br />
Tracking email campaigns in Google  Analytics is done using a process  called link tagging. This process is  the manipulation of the links in  your emails.</p>
<p><a href="http://www.epikone.com/blog/2008/11/04/email-tracking-with-google-analytics/"><img src="http://media.smashingmagazine.com/cdn_smash/images/analytics/picture-7.png" alt="Picture-7 in A Guide to Google Analytics and Useful Tools" width="352" height="265" /></a></p>
<p><a href="http://www.semvironment.com/ppc-management-adwords-keyword-data-exposed-with-google-analytics/">PPC  Management: AdWords Keyword Data Exposed With Google Analytics</a><br />
You CAN expose your specific AdWords Keyword Data beyond the dreaded  “other unique queries” in the AdWords Search Query Report with Google  Analytics.</p>
<p><a href="http://www.semvironment.com/ppc-management-adwords-keyword-data-exposed-with-google-analytics/"><img src="http://media.smashingmagazine.com/cdn_smash/images/analytics/traffic-sources-adwords-keyword-positions.jpg" alt="Traffic-sources-adwords-keyword-positions in A Guide to Google  Analytics and Useful Tools" width="192" height="360" /></a></p>
<p><a href="http://www.askapache.com/linux-unix/ga-urchin-speed.html">Speed Up  Google Analytics</a><br />
“Last year I wrote about <a href="http://www.askapache.com/webmaster/faster-google-analytics-with-a-local-urchinjs.html">hosting  Google Analytics urchin.js file on your own server</a>, to speed up the  loading of your site.  Well, google has migrated to a new analytics  javascript, ga.js.  You can read the <a href="http://www.google.com/analytics/GATCmigrationguide.pdf">urchin.js  to ga.js migration guide</a> if you want.  They also wrote about the  changes on the <a href="http://analytics.blogspot.com/2007/12/announcing-new-graphing-tools-gajs.html">Google  Analytics Blog</a>.  And if you want to learn about advanced features  of ga.js check out this <a href="http://code.google.com/apis/analytics/docs/">Google Analytics  Documentation</a>.”</p>
<p><a title="Permanent Link to Google Analytics  101: Some Basic Setup Tips" rel="bookmark" href="http://doteduguru.com/id132-google-analytics-basic-tips.html">Some  Basic Setup Tips</a><br />
Get you more effectively using your Google  Analytics account.</p>
<p><a title="Permanent Link to Optimize Form  Length with Input Analysis" rel="bookmark" href="http://www.e-nor.com/blog/index.php/web-analytics/optimize-form-length-with-input-analysis/">Optimize  Form Length with Input Analysis</a><br />
In this post, I will share with  you E-Nor’s technique in determining  the forms fields that people are  most likely not to complete. I will  show you how to make this data  available to decision makers and web  optimizers so they are able to  make the necessary changes.</p>
<p><a href="http://www.juiceanalytics.com/writing/keyword-trends-google-analytics-greasemonkey/">Keyword  Trends With Google Analytics and Greasemonkey</a></p>
<p><a href="http://www.adobe.com/cfusion/exchange/index.cfm?event=extensionDetail&amp;loc=en_us&amp;extid=1282521">Google  Analytics Reporting Suite </a><br />
The Google Analytics Reporting Suite  brings Google Analytics to the  desktop, with a host of features that  help you understand how your  website is performing and where you can  improve. From tracking your  visitors, referrals and campaigns to  viewing your AdWords ROI metrics,  the Google Analytics Reporting suite  is a must-have for every web  business.</p>
<h3>Articles, Tutorials and  Tools</h3>
<p><a title="Permanent Link to #31: Introduction to Google  Analytics" rel="bookmark" href="http://css-tricks.com/video-screencasts/31-introduction-to-google-analytics/">Introduction  to Google Analytics</a><br />
A screencast by Chris Coyier.</p>
<p><a title="Permanent Link to Forcing Google analytics to show real time  data" rel="bookmark" href="http://blogote.com/2008/ideas/forcing-google-analytics-to-show-real-time-data.html">Forcing  Google analytics to show real time data</a><br />
Google Analytics  generally updates your reports every 24 hours. This means that it could  take 24 hours for data to appear in your account after you have first  installed the tracking code. Learn how you can get real time data from  Google Analytics.</p>
<p><a title="Measure Online Advertising with Google  Analytics" rel="bookmark" href="http://www.thinkvitamin.com/features/biz/measure-online-advertising-with-google-analytics">Measure  Online Advertising with Google Analytics</a><br />
A common misconception  that many people have is that GA can only be used to track Google  AdWords. That’s simply not true. GA can be used to track any online  marketing activity. And not only will Google Analytics track online  marketing, it will also identify the conversion events that your online  marketing creates.</p>
<p><a title="5 Lesser Known Google Analytics  Features" rel="bookmark" href="http://www.toprankblog.com/2008/02/5-google-analytics-features/">5  Lesser Known Google Analytics Features</a><br />
Google Analytics is a  great program that can do a lot more than most people realize. Here are a  few features that you may not know about.</p>
<p><a title="The Ultimate  Web Analytics Data Reconciliation Checklist" rel="bookmark" href="http://www.kaushik.net/avinash/2008/11/ultimate-web-analytics-data-reconciliation-checklist.html">The  Ultimate Web Analytics Data Reconciliation Checklist</a></p>
<p><a href="http://www.sitescanga.com/">SiteScan</a><br />
It may take some time  to check the correct and complete code integration manually. This  service helps you to check the correctness of the code snippet  automatically.</p>
<p><a href="http://www.sitescanga.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/images/google-analytics/sitescan.jpg" border="0" alt="Sitescan in A Guide to Google Analytics and Useful Tools" width="320" height="169" /></a></p>
<p><a href="http://blogoscoped.com/archive/2008-01-17-n73.html">No Google  Analytics API? No Problem!</a><br />
Learn how to read and use data, e.g.  for the block with “Most Popular Posts”.</p>
<p><a href="http://blog.venture-skills.co.uk/2007/12/22/social-media-tracking-ga/">How  to track Social Media Users with Google Analytics</a><br />
One of the  questions we are often asked is how we track various social media sites  users and their interaction with sites the answer is in a variety of  ways but here is just one of the techniques we use with Google  Analytics.</p>
<p><a title="Tracking regional Search Engines in Google  Analytics" rel="bookmark" href="http://www.advanced-web-metrics.com/blog/2008/09/14/customising-the-list-of-search-engines-in-google-analytics/">Tracking  regional Search Engines in Google Analytics</a><br />
Google Analytics  recognises 41 search engines by default. Although this is constantly  being added to, there are of course a great many other search engines in  the world – language and region specific, as well as price comparison  and vertical portals.</p>
<p><a title="Adding Business Data to Google  Analytics Data" rel="bookmark" href="http://www.epikone.com/blog/2008/10/28/adding-business-data-to-google-analytics-data/">Adding  Business Data to Google Analytics Data</a><br />
“We tried using Google  Spreadsheets to store business info but it never worked. People did not  take the time to open up a spreadsheet and add information. We figured  that adding some type of ‘note’ functionality to GA would be the easiest  way to change this behavior. That’s how GA Notes was born.”</p>
<p><a title="Permanent Link to How to Get Detailed PPC Keyword Data from  Google Analytics" rel="bookmark" href="http://www.ga-experts.com/blog/2006/11/how-to-get-detailed-ppc-keyword-data-from-google-analytics/">How  to Get Detailed PPC Keyword Data from Google Analytics</a><br />
A new  filter that shows exactly the Search Term (i.e. keywords that are  searched on) rather than just the Bid Term (i.e. the keywords that  triggered a PPC advert).</p>
<p><a title="How It Works" rel="bookmark" href="http://www.epikone.com/blog/2008/01/13/google-analytics-e-commerce-tracking-pt-1-how-it-works/">Google  Analytics E-Commerce Tracking</a><br />
This series of article has 4  parts: <a href="http://www.epikone.com/blog/2008/01/13/google-analytics-e-commerce-tracking-pt-1-how-it-works/">1</a> | <a href="http://www.epikone.com/blog/2008/01/22/google-analytics-e-commerce-tracking-pt-2-installation-setup/">2</a> | <a href="http://www.epikone.com/blog/2008/06/25/google-analytics-e-commerce-tracking-pt-3-why-everyone-should-use-it/">3</a> | <a href="http://www.epikone.com/blog/2008/07/02/google-analytics-e-commerce-tracking-pt-4-tacking-lead-gen-forms/">4 </a></p>
<h3>Blogs about Google Analytics</h3>
<p><a href="http://analytics.blogspot.com/index.html">The official Google  Analytics Blog</a></p>
<p><a href="http://www.advanced-web-metrics.com/blog/">Advanced Web Metrics</a><br />
A blog of Brian Clifton’s blog about analytics, with many useful tips  and ideas.</p>
<p><a href="http://www.googleanalyticsresults.com/">Google  Analytics Results</a><br />
A Google Analytics blog written by the  company Mangold Sengers.</p>
<p><a href="http://www.lunametrics.com/blog/">Luna Metrics Blog</a><br />
A blog  of an Internet consulting firm that specializes in configuring and  evaluating Google Analytics.</p>
<p><a href="http://www.epikone.com/blog/">Analytics Talk</a><br />
Justin  Cutroni’s blog about Google Analytics.</p>
<h3>And finally…</h3>
<p>Google  Analytics may be lying to you, even though it tells the truth — simply  because you’re not telling it how to track your site effectively. Are  you guilty of any of the following?</p>
<ul>
<li>Are those really your  conversion rates?</li>
<li>Do customers actually find your site using  that keyword?</li>
<li>Are you sure that Digg story sent you all that  traffic?</li>
</ul>
<p>If you are, you may want to read this article: <a href="http://www.marketingpilgrim.com/2008/05/8-stupid-things-webmasters-do-to-mess-up-their-analytics.html">8  Stupid Things Webmasters do to mess up their analytics</a>.</p>
<div>
<div><img src="http://www.gravatar.com/avatar/6b81bf10ddf97c1a224dde2ef9b8666f?s=78&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D78&amp;r=G" alt="" width="78" height="78" /></div>
<div><a title="Posts  by Paul Andrew" href="http://www.smashingmagazine.com/author/paul-andrew/">Paul Andrew</a>Paul Andrew is a  freelance Web designer. He is chief admin for Speckyboy &#8211; Design  Magazine, a Web design, Web development and graphic design resource  blog.</p>
<ul>
<li><a href="http://speckyboy.com/">Homepage</a></li>
<li><a href="http://twitter.com/speckyboy">Twitter Page</a></li>
</ul>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.astagramstudios.com/blog/tutorial/a-guide-to-google-analytics-and-useful-tools/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to design a print ready business card design in photoshop</title>
		<link>http://www.astagramstudios.com/blog/tutorial/how-to-design-a-print-ready-business-card-design-in-photoshop/</link>
		<comments>http://www.astagramstudios.com/blog/tutorial/how-to-design-a-print-ready-business-card-design-in-photoshop/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 14:48:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[business card]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[photoshop]]></category>

		<guid isPermaLink="false">http://www.astagramstudios.com/blog/?p=523</guid>
		<description><![CDATA[When you’re building your business, the ever overlooked business card is a piece of marketing material that I feel is very valuable. Today, people are focused on social media promotion and interacting with their clients over the internet, but what about when you come across a person in ‘real life’ who wants to know more<a href="http://www.astagramstudios.com/blog/tutorial/how-to-design-a-print-ready-business-card-design-in-photoshop/">&#160;&#160;[ Read More ]</a>]]></description>
			<content:encoded><![CDATA[<p>When you’re building your business, the ever  overlooked business card is a piece of marketing material that I feel is  very valuable.  Today, people are focused on social media promotion and  interacting with their clients over the internet, but what about when  you come across a person in ‘real life’ who wants to know more about  your business?</p>
<p>Do you stop, write your website, name and email address down or do  you just whip out your business card? I hope that you’re wanting to  utilize a business card for your business. Today’s photoshop tutorial  will take you through the step by step process on how to design your  very own business card (front and back). I’ve also included a couple of  extra options in the downloadable photoshop file so you can play with  them, edit them and make them your own.</p>
<h3>Step 1: Setting up your document</h3>
<p>Below you will see the spec’s were using for today’s tutorial. First,  create a new document and plug these specs into your document and click  ok.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-1.jpg" alt="Business Card Photoshop Tutorial" /></p>
<h3>Step 2: Creating your bleed guides</h3>
<p>For your business card, the background design you use will touch the  edge of the document, but for the text, you’re going to need to keep it  within a ’safe zone’ in case things get cut different during the  printing process. You don’t want to order 1,000+ business cards, only to  see that half of your email address or phone number is cut off.</p>
<p>You’re going to create a new layer and name it “bleed”. We’re going  to make a selection that is 38 pixels away from the edge, all the way  around and add a 1px stroke in red. We’re going to have to keep our text  and/or logos within this space so it doesn’t get cut off during the  print process.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-2.jpg" alt="Business Card Photoshop Tutorial" /></p>
<p><em>Note: The official bleed space for different printers differs.  Please ensure that the safe zone you’re setting up works with the  printer that you’re going to use.</em></p>
<h3>Step 3: Setting up the background of our business card</h3>
<p>First, we’re going to fill the background layer with a dark brown  color (#311504). After you do this, create a new layer and name it  “texture”. We’re going to fill this layer with a default texture that’s  in adobe photoshop cs4 (seen in the image below) and changing the layer  blending mode to multiply.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-3.jpg" alt="Business Card Photoshop Tutorial" /></p>
<h3>Step 4: Adding in your company name</h3>
<p>Now that we’ve got the background set up, we’re going to add the  company name. In this tutorial, we’re just going to use, you guessed it,  Company Name, so make sure you add your business name in. For the font,  we’re going to use the free font, <a onclick="javascript:pageTracker._trackPageview('/outbound/article/www.dafont.com');" href="http://www.dafont.com/you-are-loved.font">You  Are Loved</a> from <a onclick="javascript:pageTracker._trackPageview('/outbound/article/www.dafont.com');" href="http://www.dafont.com/you-are-loved.font">DaFont</a>.  We’re going to type in 24pt size and use two colors, one for each word  of our company name. The first color is #de4549 and the second color is  #d8a728.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-4.jpg" alt="Business Card Photoshop Tutorial" /></p>
<h3>Step 5: Adding in your information</h3>
<p>Now that we’ve got the company name added into the top left, we’re  going to add some more text onto the document. Create a new layer and  name it ‘info’. In this layer, use your type tool and type in the  following information, using the character options seen below. The color  we’re using is #de4549. Make sure your text is aligned to the right so  the right side of the text gives a flush area for you to put your  information against.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-5.jpg" alt="Business Card Photoshop Tutorial" /></p>
<p>Next, we’re going to make a new layer and name it ‘my info’. In this  layer, we’re going to be putting in your personal information. The color  for this font is # and we’re going to use the same character  information as above, aligning the font to the left.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-5-1.jpg" alt="Business Card Photoshop Tutorial" /></p>
<h3>Step 6: Setting up folders for “front” and “back” designs</h3>
<p>Now that we’ve got the business card designed and set up, we’re going  to create a new folder for our layers to sit within. We’ll be naming  this folder “Back”. Start by clicking the new folder button in your  layers palette.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-6.jpg" alt="Business Card Photoshop Tutorial" /></p>
<p>Now you’re going to place all of your text layers into this folder.  It will look similar to below.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-6-1.jpg" alt="Business Card Photoshop Tutorial" /></p>
<p>Next, create another new folder and name it “Front”. In this folder,  you’re going to create a new layer and name it “company name”. Grab your  text tool and type “CompanyName” just like we did in step 4. This time,  we’re going to make the font 36pt.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-6-2.jpg" alt="Business Card Photoshop Tutorial" /></p>
<p>For the front, we’re going to want to keep things clean and mostly  logo centered, so we’ll have your company name in a large font like this  and we’re also going to add in a quick line of text to explain what you  do. For this, you’re going to want to create a new layer and name it  “info”. We’ll be using the same font we’ve been using, but making it  14pt and #e14f09.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-6-3.jpg" alt="Business Card Photoshop Tutorial" /></p>
<p>Now, you’re going to select the “Front” folder and then hit SELECT  &gt; ALL. Now, you’re going to head to LAYER &gt; ALIGN LAYERS TO  SELECTION &gt; VERTICAL CENTER. This is going to ensure that your text  is centered properly from top to bottom.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_step-6-4.jpg" alt="Business Card Photoshop Tutorial" /></p>
<p>At this point, you’re ready to save your work. Check with your  printer to know what file type they’re after (TIFF, JPG, PSD, AI and so  on). You’re also going to want to ensure that the bleed layer is  invisible so you don’t have a bright red border around your business  card.</p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_front.jpg" alt="Business Card Photoshop Tutorial" /></p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_back.jpg" alt="Business Card Photoshop Tutorial" /></p>
<h3>Some extras for you, all included in the downloadable psd file</h3>
<p>Below are screenshots of a couple of other styles I created using  this same basic set up. They’re all in their own folders in the psd  file. Have fun with them <img src="http://www.tuttoaster.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" /></p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_white.jpg" alt="Business Card Photoshop Tutorial" /></p>
<p><img src="http://www.tuttoaster.com/wp-content/uploads/2010/02/business-card_black.jpg" alt="Business Card Photoshop Tutorial" /></p>
<h3>Download the Photoshop file <a href="http://www.tuttoaster.com/wp-content/uploads/downloads/businesscard.zip">here</a></h3>
<p><!-- THIS IS THE LIVE DEMO AND DOWNLOAD SECTION, TO ACTIVATE USE THE CUSTOM FIELD KEY demo_download AND VALUE true --> <!-- END LIVE DEMO AND DOWNLOAD SECTION --> <!-- THIS IS THE DOWNLOAD ONLY SECTION, TO ACTIVATE USE THE CUSTOM FIELD KEY download AND VALUE true --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.astagramstudios.com/blog/tutorial/how-to-design-a-print-ready-business-card-design-in-photoshop/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

