<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/&quot;AkcMR3k7fip7ImA9WhRUGUU.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937</id><updated>2012-01-31T16:34:46.706+11:00</updated><category term="VBScript" /><category term="Keyword Research" /><category term="VB.NET" /><category term="PhpMyadmin" /><category term="Programming Tips" /><category term="Webmaster Tools" /><category term="Administration" /><category term="Date calculation" /><category term="Web Development" /><category term="RSS" /><category term="Browser Compatibility" /><category term="IRibbonExtensibility" /><category term="Outlook Ribbon" /><category term="Search Engine Optimisation" /><category term=".htaccess" /><category term="Apache" /><category term="Forms" /><category term="Do Follow Tools" /><category term="JScript" /><category term="News" /><category term="Php RSS 2 Writer" /><category term="Developer Tools" /><category term="MySQL" /><category term="CSS" /><category term="Javascript" /><category term="PhpBB3" /><category term="SPD" /><category term="Date Difference" /><category term="SharePoint 2010" /><category term="SDK" /><category term="SharePoint Integration" /><category term="PEAR" /><category term="VBA" /><category term="References" /><category term="InfoPath Integration" /><category term="Windows Phone 7" /><category term="User Acceptance" /><category term="HTML" /><category term="SharePoint Designer" /><category term="Outlook 2007" /><category term="Microsoft Outlook" /><category term="String Manipulation" /><category term="Free Php Scripts" /><category term="Development Resources" /><category term="Php Sessions" /><category term="SEO Tips" /><category term="InfoPath" /><category term="Performance Tips" /><category term="Free Tools" /><category term="CDATA" /><category term="Php FeedWriter" /><category term="XML Reader" /><category term="SharePoint Development" /><category term="Blog Tips" /><category term="Security" /><category term="RSS Writer" /><category term="Programming" /><category term="Internet Marketing" /><category term="Web Design" /><category term="Xml" /><category term="Feed Generator" /><category term="COM Addin" /><category term="Resources" /><category term="XMLWriter" /><category term="Macro" /><category term="Query String Manipulation" /><category term="Web Parts" /><category term="SharePoint Administration" /><category term="Web Marketing" /><category term="RSS Generator" /><category term="Addin" /><category term="System Implementation" /><category term="Breadcrumb" /><category term="Troubleshooting" /><category term="WordPress" /><category term="SharePoint" /><category term="SharePoint Marketing" /><category term="VB6" /><category term="Workflow" /><category term="Java" /><category term="Bulk Submit" /><category term="DIY SEO" /><category term="C#" /><category term="Website Performance" /><category term="SEO" /><category term="Database" /><category term="Learning Resources" /><category term="Improve website performance" /><category term="Date Time" /><category term="mod_rewrite" /><category term="Php" /><category term="Disaster Recovery" /><category term="Privacy Policy" /><category term="web development blog" /><category term="Tips and Tricks" /><category term="Key Phrase Targeting" /><category term="Utilities" /><title>Code-Tips.com - Web Development, Programming, SEO</title><subtitle type="html">Web Development &amp;amp; Programming in PHP, ASP.NET, XML, VB, .NET Framework, JavaScript and HTML/CSS for Web Applications, Internet Marketing and SEO</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://www.code-tips.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>51</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/Code-tipscom-WebDevelopmentProgramming" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="code-tipscom-webdevelopmentprogramming" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;C0QDQHoycSp7ImA9WhdVEUs.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-3798009825764976317</id><published>2011-09-05T18:50:00.003+10:00</published><updated>2011-09-16T18:22:51.499+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-16T18:22:51.499+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Do Follow Tools" /><category scheme="http://www.blogger.com/atom/ns#" term="SEO" /><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Marketing" /><category scheme="http://www.blogger.com/atom/ns#" term="DIY SEO" /><title>DIY SharePoint Marketing Tips &amp; Tools - Do Follow SharePoint Article Libraries</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GhkplQunj5JNnBiY6939hLRuxl4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GhkplQunj5JNnBiY6939hLRuxl4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GhkplQunj5JNnBiY6939hLRuxl4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GhkplQunj5JNnBiY6939hLRuxl4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;Looking for places to help promote your SharePoint products or  website using legitimate means?&amp;nbsp; In this article I provide information  and tips about how you can promote your products or services yourself  for free.&amp;nbsp; The article has a focus on promoting a website relating to  SharePoint, but the tips are applicable to any type of product or  service being marketing online.&amp;nbsp; A few websites providing free (Do  Follow) SharePoint Article Libraries are also provided. 



Submitting  articles can be a great way of gaining exposure to your SharePoint  website or products, giving you complete control over the quality of  content used to market your products.&amp;nbsp; Don't leave the job to a company  who may use unethical or immoral tactics to promote your site.&amp;nbsp; The  people behind these "shady" services will almost never disclose the  actual methods used to promote their client's site because they would be  putting their own business at risk, or wouldn't be selected as a viable  service to assist with online marking at all.&amp;nbsp; Popular Search Engines  are working constantly to eliminate spam and other types of pollution  from their search results, so why risk using cheap outsources SEO  services who use these methods, that will provide little benefit to you,  or in many cases have a negative effect?



If the  reputation of your company, website, products and services is important  to you, then you need to be very careful about who you choose to market  your website when outsourcing.&amp;nbsp; You will generally get what you pay for,  but not in every case.&amp;nbsp; To help manage or eliminate this risk, there  are many things that you can do to promote your own site that keep you  in control of the quality of content used to promote your site.





Writing  and submitting high quality and useful articles that relate to your  company's SharePoint products and services is one method that presents  little or no risk.&amp;nbsp; Each article should be submitted to a...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/PIKiFx1gDKw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/3798009825764976317/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/09/diy-sharepoint-marketing-tips-tools-do.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3798009825764976317?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3798009825764976317?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/09/diy-sharepoint-marketing-tips-tools-do.html" title="DIY SharePoint Marketing Tips &amp; Tools - Do Follow SharePoint Article Libraries" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-KrDsG5YVQIA/TmSLC_4qkcI/AAAAAAAAAOU/LqySa9Y2_EE/s72-c/graph.jpg" height="72" width="72" /><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEYERX84eSp7ImA9WhdQEkg.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-3714325576817510326</id><published>2011-08-14T02:05:00.005+10:00</published><updated>2011-08-14T02:15:04.131+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-14T02:15:04.131+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="RSS Generator" /><category scheme="http://www.blogger.com/atom/ns#" term="Php FeedWriter" /><category scheme="http://www.blogger.com/atom/ns#" term="RSS" /><category scheme="http://www.blogger.com/atom/ns#" term="Feed Generator" /><title>How to Generate Feed Using Php (Atom 1.0 and RSS 2.0 Compatible)</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/wafaD17tfifMlLYFzwKey6JZ6yE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wafaD17tfifMlLYFzwKey6JZ6yE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/wafaD17tfifMlLYFzwKey6JZ6yE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wafaD17tfifMlLYFzwKey6JZ6yE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;In this tutorial, I demonstrate how to generate a feed using Php&amp;nbsp;that can be displayed from a website in multiple formats, including Atom 1.0 and RSS 2.0. &amp;nbsp;I will be using functionality from the Php FeedWriter class library&amp;nbsp;to generate the feed, which is available for free&amp;nbsp;at http://phpFeedWriter.webmasterhub.net/.

I have broken up the process below into separate components, and provided additional information to help you learn each aspect of creating the feed using Php. &amp;nbsp;A download of the completed script written in this tutorial is also provided if required.SummaryPrepare your feed script/page - Instantiate a (Php) FeedWriter Class Object
Add additional (Channel) data to the feed
Add Items to the Feed
Get the specified feed output format
(Optional) Set the “Content” element of each feed item as type “HTML”
Output the Feed XML
(Optional) Writing to a file / Caching Feed Content


Prepare your feed script/page - Instantiate a (Php) FeedWriter Class ObjectDownload the latest version of the Php feedWriter Class library&amp;nbsp;(free)
Extract the package to a new directory on your web server that supports Php. &amp;nbsp;
For the purpose of this example, &amp;nbsp;have copied the Php FeedWriter class files to a "feed/" sub-folder.Create a new file called "feed.php". &amp;nbsp;
This file will be used to serve the feed content, so must be accessible from your website.Paste the following code into the file.




/* Example Feed using Php FeedWriter http://phpFeedWriter.webmasterhub.net/ 
 * Example feed: http://phpfeedwriter.webmasterhub.net/samples/1/feed.php
 *
 * View the tutorial: http://www.code-tips.com/2011/08/how-to-generate-feed-using-php-atom-10.html 
 */
require_once('feed/FeedWriter.php');

//Block 1 ----------------------------------------------
//Title if the feed
$feed_title = 'Example Feed using Php FeedWriter';

//Feed Link.  This should be a URL to the website, or blog that content displayed in the feed is from.
$feed_link =...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/obZPnOrsjg0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/3714325576817510326/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/08/how-to-generate-feed-using-php-atom-10.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3714325576817510326?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3714325576817510326?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/08/how-to-generate-feed-using-php-atom-10.html" title="How to Generate Feed Using Php (Atom 1.0 and RSS 2.0 Compatible)" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEcDRXY4eyp7ImA9WhZaE0g.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-7627677316876251898</id><published>2011-06-29T22:53:00.001+10:00</published><updated>2011-06-29T22:54:34.833+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-29T22:54:34.833+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="RSS Generator" /><category scheme="http://www.blogger.com/atom/ns#" term="Php FeedWriter" /><category scheme="http://www.blogger.com/atom/ns#" term="RSS" /><category scheme="http://www.blogger.com/atom/ns#" term="Feed Generator" /><title>Php FeedWriter Released - Version 3.0 Beta - Universal Feed Generator</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/-74zE9bJ_tws1qbvsVIs0lDJulI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-74zE9bJ_tws1qbvsVIs0lDJulI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/-74zE9bJ_tws1qbvsVIs0lDJulI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-74zE9bJ_tws1qbvsVIs0lDJulI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;Generate Atom 1.0, RSS 2.0 and RSS 1.0 feeds for free using Php. 





Php FeedWriter 3.0 beta has been released for download.&amp;nbsp; The update to the class and functionality builds upon the previous version RSS2Writer v2.1, which limited output to an RSS 2.0 compatible feed only.

Php FeedWriter 3.0 now supports multiple feed formats: Atom 1.0, RSS 2.0, RSS 1.0, RSS 0.92 and RSS 0.91.&amp;nbsp; Php FeedWriter povides a set of easy to use functions to handle both feed input and output.





New FeedConstruct Class

Php FeedWriter uses a custom "FeedConstruct" class to consttruct a representation of each supported feed output format.&amp;nbsp; Specific elements that make up part of the XML document for a feed can be added and configured using the FeedConstruct class to control validation and XML output.&amp;nbsp; This class is used as an&amp;nbsp; abstraction layer between each feed fomat allowing data to be included in the feed once, but included in any of the output formats that support the data.





Online Documentation

The Php FeedWriter website now provides online documentation supporting the solution.&amp;nbsp; This includes doucmentation for each of the funtions in the FeedWriter and FeedConstruct class to assist when adding data into the feed, and for cases where you need to change or control how the data is outputted, such as using type "html" instead of "text" for the feed item body.





Instructions for how to install Php FeedWriter on a website for first use are also provided.&amp;nbsp; Tutorials for using php FeedWriter will be posted to the blog in future, which will also be accessible under the "Additional Resources" heading of the documentation page for a particular function.



Samples 

A number of sample feed generator scripts have been made available on the Php FeedWriter website to assist with creating a feed.&amp;nbsp; Samples include single scripts that handle multiple feed formats, as well as preset (fixed) formats.&amp;nbsp; Both simple and more extensive examples are...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/coSRIRoUIEA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/7627677316876251898/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/06/php-feedwriter-released-version-30-beta.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/7627677316876251898?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/7627677316876251898?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/06/php-feedwriter-released-version-30-beta.html" title="Php FeedWriter Released - Version 3.0 Beta - Universal Feed Generator" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CEYNQHYzfCp7ImA9WhZUGU4.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-334536071665662864</id><published>2011-06-13T12:24:00.002+10:00</published><updated>2011-06-13T12:29:51.884+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-06-13T12:29:51.884+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Breadcrumb" /><category scheme="http://www.blogger.com/atom/ns#" term="WordPress" /><title>WordPress Breadcrumb Navigation on Pages &amp; Meta Title</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/dpO7rMjk5pW44jssgCv6jt6xbtg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dpO7rMjk5pW44jssgCv6jt6xbtg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/dpO7rMjk5pW44jssgCv6jt6xbtg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/dpO7rMjk5pW44jssgCv6jt6xbtg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;Today I needed to include page breadcrumbs on a WordPress blog site.&amp;nbsp; I only wanted the breadcrumb navigation to be visible on pages, and to not display at all on the homepage (static).



The following solution by Dimox was perfect for what I needed:

WordPress Breadcrumbs Without a Plugin



The solution was easy to implement and satisfied more than my initial requirements, so it gives me great pleasure to make a mention on my blog here.



By default, the solution does not display the breadcrumb on the homepage, although this is easy to amend if required (see early comments).&amp;nbsp; I placed the "short code" for the main function in only the page template so that the breadcrumb would not display on posts or category/search pages.



As the solution worked so well, I decided to use to display a breadcrumb title.&amp;nbsp; To do this, I first adjusted the dimox_breadcrums() function to include one parameter: ($meta_title = false)



I then adjusted each part of the function that builds the breadcrumb to only include HTML output before and after each item in the breadcrumb ($before / $after) if the $meta_title variable is true. This meant that only the page title text and delimiter were included in the breadcrumb when $meta_title is true, allowing me to include in the title tag in the page meta data.



To incorporate the breadcrumb into the title, I modified the header template for the theme that I was using, to include the following for the meta title:





&amp;lt;title&amp;gt;&amp;lt;?php bloginfo('name'); ?&amp;gt; » &amp;lt;?php if(is_page()) dimox_breadcrumbs(true); else wp_title(); ?&amp;gt; &amp;lt;/title&amp;gt;



This meant that if a page, it would include the breadcrumb in the title overriding the default title, and include the default title when another type of page (post, search, category/tag, etc).&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/1lMfcl4HXJI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/334536071665662864/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/06/wordpress-breadcrumb-navigation-on.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/334536071665662864?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/334536071665662864?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/06/wordpress-breadcrumb-navigation-on.html" title="WordPress Breadcrumb Navigation on Pages &amp; Meta Title" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total></entry><entry gd:etag="W/&quot;CEINRXk5fCp7ImA9Wx9UFU8.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-5279637476054613895</id><published>2011-02-13T01:56:00.002+11:00</published><updated>2011-02-13T01:56:34.724+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-13T01:56:34.724+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="Query String Manipulation" /><title>Javascript Query String Manipulation Functions</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/T-McgDEHR1RYezz1E9mR2gvp-GE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/T-McgDEHR1RYezz1E9mR2gvp-GE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/T-McgDEHR1RYezz1E9mR2gvp-GE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/T-McgDEHR1RYezz1E9mR2gvp-GE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;Javascript Query String Manipulation Functions



The  following is a series of articles with Javascript functions that can be  used to manipulate the query string parameters and variables in the  current url. &amp;nbsp;Use the links below to go to a specific function:



Javascript Add Query String Parameter

Add a query string parameter to the url of the current page.



Javascript Check if Query String Parameter Exists in current URL

Test if the query string of the current URL contains a specific parameter.



Javascript Remove a parameter from the query string if found in current url

Remove a parameter from the query string of the current page.



Javascript Get the value of the specified Query String Parameter

Find  the value of a specific query string parameter in the current URL.  &amp;nbsp;Return the value of the parameter, or false if not found.



Javascript Get all parameters and values as an Array

Returns a multidimensional array containing parameters and values from the query string of the current page.



Javascript Return the url of the current page with no query string parameters (strip params)

Removes all parameters from the query string of the current URL.



Javascript Add query string parameter dynamically to some or all links on the current page

Update all links on the current page to include a specific query string parameter and value.&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/2kGMPEiMPns" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/5279637476054613895/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/02/javascript-query-string-manipulation.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/5279637476054613895?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/5279637476054613895?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/02/javascript-query-string-manipulation.html" title="Javascript Query String Manipulation Functions" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DUMBSXw9eCp7ImA9Wx9bFk0.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-5422733349376897423</id><published>2011-02-13T01:01:00.004+11:00</published><updated>2011-02-25T15:17:38.260+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-25T15:17:38.260+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="Query String Manipulation" /><title>Javascript Add query string parameter dynamically to some or all links on the current page</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/-N9A5DxihvIPhp4ZUm-bCjIX9Hk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-N9A5DxihvIPhp4ZUm-bCjIX9Hk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/-N9A5DxihvIPhp4ZUm-bCjIX9Hk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-N9A5DxihvIPhp4ZUm-bCjIX9Hk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;This  Javascript function retrieves all &amp;lt;a&amp;gt; tags (hyperlinks) from the  current page, and updates each link to include the supplied query string  parameter and value.

The  third (optional) parameter passed to the function is an array of  strings containing the domains that should be included when updating  links on the page.

If a link points to a domain that is not in the array passed to the function, the link will remain unchanged.



If  no Array of domains to include is supplied when calling the function,  only the current domain is used. &amp;nbsp;For each link on the current page that  the function loops through, the query string parameter is added to the  link if the host matches one of the hosts in the array of domains.





function updateLinks(parameter, value, includeDomainsArray)

{



 &amp;nbsp;&amp;nbsp;&amp;nbsp;var links = document.getElementsByTagName('a');

 &amp;nbsp;&amp;nbsp;&amp;nbsp;var includeDomains = new Array();

 &amp;nbsp;&amp;nbsp;&amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;if(arguments.length == 3) //has include domains

 &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//Links will be updated only if they point to one of the following domains:

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//includeDomains = includeDomainsArray.split("|");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;includeDomains = includeDomainsArray;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;}

 &amp;nbsp;&amp;nbsp;&amp;nbsp;else

 &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//Links will be updated only if they point to one the current domain only:

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;includeDomains[0] = self.location.host;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;}

 &amp;nbsp;&amp;nbsp;&amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;for (var i=0;i&amp;lt;links.length;i++)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;{

  &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if(links[i].href != "#" &amp;amp;&amp;amp; links[i].href != "/"  &amp;amp;&amp;amp; links[i].href != "" &amp;amp;&amp;amp; links[i].href !=  window.location) //Ignore links with empty src attribute, linking to  site root, or anchor tags (#)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/Q5BmshHT3Tg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/5422733349376897423/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/02/javascript-add-query-string-parameter_13.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/5422733349376897423?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/5422733349376897423?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/02/javascript-add-query-string-parameter_13.html" title="Javascript Add query string parameter dynamically to some or all links on the current page" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total></entry><entry gd:etag="W/&quot;CE4FRXw4fSp7ImA9Wx9UFU8.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-5290357637442532894</id><published>2011-02-13T00:57:00.005+11:00</published><updated>2011-02-13T02:01:54.235+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-13T02:01:54.235+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="Query String Manipulation" /><title>Javascript Return the url of the current page with no query string parameters</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HVoLMFRqzVB9PtFbNDzViqn47NU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HVoLMFRqzVB9PtFbNDzViqn47NU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HVoLMFRqzVB9PtFbNDzViqn47NU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HVoLMFRqzVB9PtFbNDzViqn47NU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;This Javascript function strips/removes any existing query string parameters from the url and returns the 'cleaned' url.

 



function stripParameters()

{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;var loc = window.location.href;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;return loc.split("?")[0];

}







Next:&amp;nbsp;Javascript Add query string parameter dynamically to some or all links on the current page



Previous:&amp;nbsp;Javascript Get all parameters and values as an Array



Javascript Query String Manipulation (TOC)&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/InsfMIMcbv8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/5290357637442532894/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/02/javascript-return-url-of-current-page.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/5290357637442532894?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/5290357637442532894?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/02/javascript-return-url-of-current-page.html" title="Javascript Return the url of the current page with no query string parameters" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DEAHR3s7eCp7ImA9Wx9bFk0.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-8829336218502029672</id><published>2011-02-13T00:55:00.003+11:00</published><updated>2011-02-25T15:05:36.500+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-25T15:05:36.500+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="Query String Manipulation" /><title>Javascript Get all parameters and values as an Array</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/UOdW7hkWCRksn3B2G5nCHh12nHM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UOdW7hkWCRksn3B2G5nCHh12nHM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/UOdW7hkWCRksn3B2G5nCHh12nHM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/UOdW7hkWCRksn3B2G5nCHh12nHM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;This  Javascript function extracts each parameter from the query string and  returns a multi dimensional array containing the parameter names and  values.



Array( Array(parameter_name1, parameter_value1) , Array(parameter_name2, parameter_value2) )







function getAllParameters()

{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;fullQString = window.location.search.substring(1);

 &amp;nbsp;&amp;nbsp;&amp;nbsp;paramArray = fullQString.split("&amp;amp;");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;var finalArray = new Array();

 &amp;nbsp;&amp;nbsp;&amp;nbsp;for (i=0;i&amp;lt;paramArray.length;i++)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;currentParameter = paramArray[i].split("=");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;finalArray[i] = Array(currentParameter[0], currentParameter[1]);

 &amp;nbsp;&amp;nbsp;&amp;nbsp;}

 &amp;nbsp;&amp;nbsp;&amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;return finalArray;

}





Next:&amp;nbsp;Javascript Return the url of the current page with no query string parameters



Previous: Javascript Get the value of the specified Query String Parameter



Javascript Query String Manipulation (TOC)&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/HHBmoz5gDb0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/8829336218502029672/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/02/javascript-get-all-parameters-and.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/8829336218502029672?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/8829336218502029672?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/02/javascript-get-all-parameters-and.html" title="Javascript Get all parameters and values as an Array" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DEAFQ3wzfyp7ImA9Wx9bFk0.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-3734568131436348153</id><published>2011-02-13T00:52:00.002+11:00</published><updated>2011-02-25T15:05:12.287+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-25T15:05:12.287+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="Query String Manipulation" /><title>Javascript Get the value of the specified Query String Parameter</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/e80iWYZ4A5K099rDqmJXie2wpak/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/e80iWYZ4A5K099rDqmJXie2wpak/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/e80iWYZ4A5K099rDqmJXie2wpak/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/e80iWYZ4A5K099rDqmJXie2wpak/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;This  Javascript function checks the address of the current page for the  supplied query string parameter. &amp;nbsp;If found, the value of the parameter  is used, if the parameter is not found, false is returned.



See also:&amp;nbsp;checkParemeterExists(), which returns true or false if the specified parameter is found or not.

 





function getParameter(parameter)

{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;fullQString = window.location.search.substring(1);

 &amp;nbsp;&amp;nbsp;&amp;nbsp;paramArray = fullQString.split("&amp;amp;");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;found = false;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;for (i=0;i&amp;lt;paramArray.length;i++)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;currentParameter = paramArray[i].split("=");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(currentParameter[0] == parameter)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;return currentParameter[1];

 &amp;nbsp;&amp;nbsp;&amp;nbsp;}

 &amp;nbsp;&amp;nbsp;&amp;nbsp;return false; //Not found

}





Next:&amp;nbsp;Javascript Get all parameters and values as an Array



Previous:&amp;nbsp;Javascript Remove a parameter from the query sring if found in current url



Javascript Query String Manipulation (TOC)&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/wRxAw5AoWTo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/3734568131436348153/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/02/javascript-get-value-of-specified-query.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3734568131436348153?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3734568131436348153?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/02/javascript-get-value-of-specified-query.html" title="Javascript Get the value of the specified Query String Parameter" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DEENQnc5eyp7ImA9Wx9bFk0.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-834359366852052881</id><published>2011-02-13T00:48:00.002+11:00</published><updated>2011-02-25T15:04:53.923+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-25T15:04:53.923+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="Query String Manipulation" /><title>Javascript Remove a parameter from the query sring if found in current url</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/aZfHP2Mio5-otUCRhNu89fjuTNo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aZfHP2Mio5-otUCRhNu89fjuTNo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/aZfHP2Mio5-otUCRhNu89fjuTNo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aZfHP2Mio5-otUCRhNu89fjuTNo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;This  Javascript function removes the supplied parameter from the query  string if it is present in the current url. &amp;nbsp;This is done by converting  the query string into an array of parameters and values, then rebuilding  the final string to exclude the parameter supplied to the function.  &amp;nbsp;The browser is then redirected to the current page with the new query  string.





function removeParameter(parameter)

{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;//Get Query String from url

 &amp;nbsp;&amp;nbsp;&amp;nbsp;fullQString = window.location.search.substring(1);

 &amp;nbsp;&amp;nbsp;&amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;paramCount = 0;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;queryStringComplete = "?";



 &amp;nbsp;&amp;nbsp;&amp;nbsp;if(fullQString.length &amp;gt; 0)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//Split Query String into separate parameters

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;paramArray = fullQString.split("&amp;amp;");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//Loop through params, check if parameter exists. &amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;for (i=0;i&amp;lt;paramArray.length;i++)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;currentParameter = paramArray[i].split("=");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;if(currentParameter[0] == parameter) //Parameter already exists in current url

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;//don't include existing (will be appended to end of url)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;}

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;else //Existing unrelated parameter

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;if(paramCount &amp;gt; 0)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;queryStringComplete = queryStringComplete + "&amp;amp;";

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/Way90N7BVgQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/834359366852052881/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/02/javascript-remove-parameter-from-query.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/834359366852052881?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/834359366852052881?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/02/javascript-remove-parameter-from-query.html" title="Javascript Remove a parameter from the query sring if found in current url" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DEEHRng5eCp7ImA9Wx9bFk0.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-8350392698200983331</id><published>2011-02-13T00:45:00.002+11:00</published><updated>2011-02-25T15:03:57.620+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-25T15:03:57.620+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Java" /><category scheme="http://www.blogger.com/atom/ns#" term="Query String Manipulation" /><title>Javascript Check if Query String Parameter Exists in current URL</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hG0QxoTaamhIo5l0QO_8r0X_7d4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hG0QxoTaamhIo5l0QO_8r0X_7d4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hG0QxoTaamhIo5l0QO_8r0X_7d4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hG0QxoTaamhIo5l0QO_8r0X_7d4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;This Javascript function checks if the parameter supplied exists in the query string. &amp;nbsp;If  the parameter supplied is found in the query string of the current URL,  the function will return true. &amp;nbsp;If the parameter is not found, false is  returned.



See also:&amp;nbsp;getParameter() - This function returns the value of the parameter if found, and false if it is not found which can be used instead of the checkParameterExists() function below







function checkParemeterExists(parameter)

{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;//Get Query String from url

 &amp;nbsp;&amp;nbsp;&amp;nbsp;fullQString = window.location.search.substring(1);

 &amp;nbsp;&amp;nbsp;&amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;paramCount = 0;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;queryStringComplete = "?";



 &amp;nbsp;&amp;nbsp;&amp;nbsp;if(fullQString.length &amp;gt; 0)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//Split Query String into separate parameters

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;paramArray = fullQString.split("&amp;amp;");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//Loop through params, check if parameter exists. &amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;for (i=0;i&amp;lt;paramArray.length;i++)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;currentParameter = paramArray[i].split("=");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;if(currentParameter[0] == parameter) //Parameter already exists in current url

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;return true;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;}

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}

 &amp;nbsp;&amp;nbsp;&amp;nbsp;}

 &amp;nbsp;&amp;nbsp;&amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;return false;

}





Next: Javascript Remove a parameter from the query string if found in current url



Previous:&amp;nbsp;Javascript Add Query String Parameter



Javascript Query String Manipulation (TOC)&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/TBSViIRSSNo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/8350392698200983331/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/02/javascript-check-if-query-string.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/8350392698200983331?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/8350392698200983331?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/02/javascript-check-if-query-string.html" title="Javascript Check if Query String Parameter Exists in current URL" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;DEINQ3szfyp7ImA9Wx9bFk0.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-601644645005366193</id><published>2011-02-13T00:40:00.003+11:00</published><updated>2011-02-25T15:03:12.587+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-02-25T15:03:12.587+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Javascript" /><category scheme="http://www.blogger.com/atom/ns#" term="Query String Manipulation" /><title>Javascript Add Query String Parameter</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/nlLYhCX5s3J2JAbMoBC9M8wjyqQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nlLYhCX5s3J2JAbMoBC9M8wjyqQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/nlLYhCX5s3J2JAbMoBC9M8wjyqQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nlLYhCX5s3J2JAbMoBC9M8wjyqQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;Redirect to the current page including the specified query string parameter and value

This  Javascript function redirects the browser back to the current page with  the query string parameter data included that is passed to the  function. &amp;nbsp;If the current url already contains the supplied query string  and value, no redirect will take place. &amp;nbsp;Existing parameters and values  are retained in the url after the redirect.



This  function can be useful when a common query string parameter is required  across multiple pages on a site, such as a session hash/id or similar. &amp;nbsp;

The  current page will reload to include the specified parameter and value  if it doesn't already exist. &amp;nbsp;Use this function in combination with the&amp;nbsp;updateLinks() function to add and manage query string parameters and variables across pages on a site dynamically.





function addParameter(parameter, value)

{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;//Get Query String from url

 &amp;nbsp;&amp;nbsp;&amp;nbsp;fullQString = window.location.search.substring(1);

 &amp;nbsp;&amp;nbsp;&amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;paramCount = 0;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;queryStringComplete = "?";



 &amp;nbsp;&amp;nbsp;&amp;nbsp;if(fullQString.length &amp;gt; 0)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//Split Query String into separate parameters

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;paramArray = fullQString.split("&amp;amp;");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//Loop through params, check if parameter exists. &amp;nbsp;

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;for (i=0;i&amp;lt;paramArray.length;i++)

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;currentParameter = paramArray[i].split("=");

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;if(currentParameter[0] == parameter) //Parameter already exists in current url

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;{

 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;//don't include existing...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/Tuqf05lV_-o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/601644645005366193/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/02/javascript-add-query-string-parameter.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/601644645005366193?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/601644645005366193?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/02/javascript-add-query-string-parameter.html" title="Javascript Add Query String Parameter" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total></entry><entry gd:etag="W/&quot;CEYGRHk6eCp7ImA9Wx9VEU8.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-3567633085144566288</id><published>2011-01-27T20:44:00.004+11:00</published><updated>2011-01-27T20:55:25.710+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-27T20:55:25.710+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Outlook Ribbon" /><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft Outlook" /><category scheme="http://www.blogger.com/atom/ns#" term="COM Addin" /><category scheme="http://www.blogger.com/atom/ns#" term="Outlook 2007" /><category scheme="http://www.blogger.com/atom/ns#" term="VB6" /><category scheme="http://www.blogger.com/atom/ns#" term="IRibbonExtensibility" /><category scheme="http://www.blogger.com/atom/ns#" term="Addin" /><title>Outlook (2007) Ribbon: Issue adding new group to Message tab</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/pTgZa3wPzBub5nsba71Au7cyXrQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pTgZa3wPzBub5nsba71Au7cyXrQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/pTgZa3wPzBub5nsba71Au7cyXrQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pTgZa3wPzBub5nsba71Au7cyXrQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;When writing a COM Addin for Microsoft Outlook 2007,  I came across a scenario where I needed to add buttons to the Ribbon  when composing or reading an email message. &amp;nbsp;Using the  IRibbonExtensibility methods, I was able to add a new tab with groups  and controls to the read and compose inspectors. &amp;nbsp;The issue was that I  needed to include an additional group in the Message tab of an email  when composing or viewing. &amp;nbsp;If I set the tab id to that of the read or  compose message class (TabNewMailMessage or TabReadMessage), the group  would not display at all.





The  new group would only display if added to a new tab. &amp;nbsp;When I set the tab  id to that of the Message tab for the read and compose message classes,  the new group would not display at all. &amp;nbsp;This was not ideal, as the  solution required that the new group and buttons were displayed first  before the standard groups within the Message Tab. &amp;nbsp;





There were a number of reasons that the custom group would not display in the Message tab on the Ribbon:





1. I  was using the id attribute instead of the idMso attribute for the tab.  &amp;nbsp;To reference the built-in Message tab, I needed to use the idMso  attribute (idMso="TabNewMailMessage" or idMso="TabReadMessage", not  id="TabNewMailMessage").





2. Include  startFromScratch attribute in Ribbon element (startFromScratch="true").  &amp;nbsp;When I first included the startFromScratch attribute set to true, I  was referencing a different tab to the Message tab, so the result was  that all tabs were removed except for my new tab and groups contained.  &amp;nbsp;After changing the id attribute to idMso and the value to the correct  identifier for each Message class, my group was then added to the end of  the built in Message tab. &amp;nbsp;I then moved the new group to the beginning  of the tab using the insertBeforeMso attribute and the built-in message  class tag ids.





The  code used to add the new group to the Message tab is below....&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/iMIG-7htxxU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/3567633085144566288/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/01/outlook-2007-ribbon-issue-adding-new.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3567633085144566288?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3567633085144566288?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/01/outlook-2007-ribbon-issue-adding-new.html" title="Outlook (2007) Ribbon: Issue adding new group to Message tab" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CkYNSXg4cSp7ImA9Wx9WGUo.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-8132989902590284949</id><published>2011-01-26T02:31:00.001+11:00</published><updated>2011-01-26T02:43:18.639+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-01-26T02:43:18.639+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="VB.NET" /><category scheme="http://www.blogger.com/atom/ns#" term="VBA" /><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft Outlook" /><category scheme="http://www.blogger.com/atom/ns#" term="Troubleshooting" /><category scheme="http://www.blogger.com/atom/ns#" term="Macro" /><title>Outlook VBA Macro Cause Close Loop</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vF79QOkUrSXmHWgm1o4b6HoBdE0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vF79QOkUrSXmHWgm1o4b6HoBdE0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vF79QOkUrSXmHWgm1o4b6HoBdE0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vF79QOkUrSXmHWgm1o4b6HoBdE0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;When developing a macro for Outlook 2007 Visual Basic Editor, part of the macro code caused outlook to close unexpectedly (“Unexpected Error has occurred”) while attempting to load.  This meant that I was not able to easily access the macro to fix the issue.



The article Outlook Close Loop - VB Macro Development suggested to adjust the macro security check option via the registry to allow Outlook to open again.  This worked, which allow Outlook to open without the error.  When prompted to enable or disable macros while loading, I opted to disabled macros.  This allowed Outlook to full load, and gave me access to the VB Editor to fix the issue.&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/lerSK1WkOOo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/8132989902590284949/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2011/01/outlook-vba-macro-cause-close-loop.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/8132989902590284949?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/8132989902590284949?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2011/01/outlook-vba-macro-cause-close-loop.html" title="Outlook VBA Macro Cause Close Loop" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;A0IDQ38-fSp7ImA9Wx5WFUQ.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-6678883718502583631</id><published>2010-09-19T15:55:00.006+10:00</published><updated>2010-09-28T00:59:32.155+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-28T00:59:32.155+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Internet Marketing" /><category scheme="http://www.blogger.com/atom/ns#" term="Web Development" /><category scheme="http://www.blogger.com/atom/ns#" term="SEO" /><category scheme="http://www.blogger.com/atom/ns#" term="SEO Tips" /><title>Web Development &amp; SEO: Considerations / Gotchas when Outsourcing SEO Services</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ek1j6E4zoraB3AltxeZ4FTtfIY0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ek1j6E4zoraB3AltxeZ4FTtfIY0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ek1j6E4zoraB3AltxeZ4FTtfIY0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ek1j6E4zoraB3AltxeZ4FTtfIY0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;Web Development and online Marketing in the industry today often involves a large number of broad areas such as planning / BA, website or system design, system or application development, system testing., server configuration and maintenance, DNS configuration, Internet Marketing / SEO, etc. There are many cases where a developer will carried out similar tasks to the webmaster, SEO or internet marketing consultant, especially when the Web site is managed externally by a single company. Most companies and individuals who offer online services for the development of web sites may also need to configure and maintain the DNS and web server. Many developers become experienced in some of these areas, but to become a real expert in any given area requires a lifetime of knowledge and experience. This is often the deciding point between outsourcing website development and SEO services to an individual with lower prices, or a larger company higher prices, but have access to a much greater range of skills in each area. In business scenarios, outsourcing the company with a wide range of talent is required to get the site off the ground, and will generally be more worth while in the end in regards to return on investment.



Professional SEO Consultants and Internet marketers should have at least moderate web development skills in order to optimize a website internally for search engines. This may require an understanding of multiple programming languages, data sources and business integration and reporting platforms. This can be one of the gotchas when outsourcing SEO or development, as there are many web development companies that will also claim to provide the necessary SEO services for you site or company. If a company claims to provide a "SEO Services" consist primarily of developers and not professional SEO, Advertising and Internet Marketing consultants where high quality content, language and marketing skills are their main focus, you may find that the techniques...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/eWzPx7pj5Bc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/6678883718502583631/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/09/web-development-seo-considerations.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6678883718502583631?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6678883718502583631?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/09/web-development-seo-considerations.html" title="Web Development &amp; SEO: Considerations / Gotchas when Outsourcing SEO Services" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total></entry><entry gd:etag="W/&quot;CU8AR34-eSp7ImA9Wx5XE0Q.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-6968711453986486526</id><published>2010-09-13T20:23:00.004+10:00</published><updated>2010-09-14T02:04:06.051+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-14T02:04:06.051+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="User Acceptance" /><category scheme="http://www.blogger.com/atom/ns#" term="System Implementation" /><title>User Acceptance of Innovations and new Solutions</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rOcJGtibYwfRzBw1IwImVkyXNrs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rOcJGtibYwfRzBw1IwImVkyXNrs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rOcJGtibYwfRzBw1IwImVkyXNrs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rOcJGtibYwfRzBw1IwImVkyXNrs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;The following provides some things to consider when developing and implementing new solutions for large volumes of end users, with a primary focus on user acceptance. &amp;nbsp;The information is my own personal opinion which is based on my experience as a Solution Architect and Developer. &amp;nbsp;I have struggled on many occasions to have users accept and adopt a new system or process, and as a result now incorporate number of techniques and methods to assist with user acceptance when designing and developing a solution. &amp;nbsp;Some of these would be common sense, but others are often overlooked as an important part of the planning, development, testing and implementation phases of a new innovation. &amp;nbsp;The main focus is on some of the reasons for the non-acceptance of new solutions and some techniques to help improve level of user acceptance. &amp;nbsp;This applies to the implementation of any new system or process for any large group of users, and is not dependent on the platform used to develop the solution.





User Resistance Non-Acceptance

Having users accept the use of new innovations in their day-to-day operations can sometimes be quite difficult. &amp;nbsp;When dealing with larger number of end users, there will almost always be some resistance from users, particularly if they have a personal stake or authority within the business. &amp;nbsp;Resistance may be caused by a number of reasons including the general lack of a technical understanding or abilities, as there will always be people who struggle with and avoid the use of technology and computers. &amp;nbsp;Other reasons might be that a solution was introduced to replace an existing system and processes that people were comfortable and failure with. &amp;nbsp;If the equivalent implementation of the existing system or process is not obviously easier and more efficient to use, as well as to provide some additional features or functionality users will be much less likely to adopt the new solution.





Process Alignment

When...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/oy0WKYIXz7Y" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/6968711453986486526/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/09/user-acceptance-of-innovations-and-new.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6968711453986486526?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6968711453986486526?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/09/user-acceptance-of-innovations-and-new.html" title="User Acceptance of Innovations and new Solutions" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;Ak8HQ30-eSp7ImA9Wx5XE04.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-6807772673390896821</id><published>2010-09-13T00:37:00.000+10:00</published><updated>2010-09-13T10:47:12.351+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-13T10:47:12.351+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Improve website performance" /><category scheme="http://www.blogger.com/atom/ns#" term="Database" /><category scheme="http://www.blogger.com/atom/ns#" term="Performance Tips" /><title>Optimise Database &amp; Application Scripts for Performance - Web Development</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Ojne8CB4hnu6cBOBhx91dmMDEpI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ojne8CB4hnu6cBOBhx91dmMDEpI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Ojne8CB4hnu6cBOBhx91dmMDEpI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ojne8CB4hnu6cBOBhx91dmMDEpI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;Improving the performance of a&amp;nbsp;Web Application or website&amp;nbsp;can sometimes be difficult depending on the factors that are contributing to downgraded performance. In some cases, performance issues may be related to server hardware or network issues to limitations which would usually cost money to improve. In other cases, there are many factors that can impact on the overall performance of a web application or website that can be changed easily.



When a database is used to store data that is required by an application to function or display information to end-users, it is sometimes hard to know exactly how it should be developed before the system has deen in production. It will be much easier once a system is in production to see what works well and what doesn't, but it is too late by this stage as making major structural shanges to a database and schema with existing data will be difficult, time consuming or not possible at all without having to re-build some components from scratch. 



To prevent having to completely re-work a datanase schema ofter it has been developed an incorporated into a live application, you need to have a strong understanding of the goals and objectives of the system, major components / processes and their primary function, as well as how each component and process pull together technically. This will allow a database schema to be designed that caters for all of the intended data types, using appropriate primary and secondary keys on each table to allow associated data form different to be joined logically. Understanding the application as a whole will also help to indicate what DBMS would be appropriate to satisfy all requirements of the system, as well as to provide sufficient security measures to keep the database and data safe.



Improving the performance of an application or website that is already in production can be achived by analysing traffic and usage data, as well as database statistics to determine which areas are...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/vDJojjD4f4o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/6807772673390896821/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/09/optimise-database-application-scripts.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6807772673390896821?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6807772673390896821?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/09/optimise-database-application-scripts.html" title="Optimise Database &amp;amp; Application Scripts for Performance - Web Development" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CkQHQng5eyp7ImA9Wx5XE00.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-6202968941550457923</id><published>2010-09-13T00:05:00.000+10:00</published><updated>2010-09-13T00:05:33.623+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-13T00:05:33.623+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Forms" /><category scheme="http://www.blogger.com/atom/ns#" term="Troubleshooting" /><category scheme="http://www.blogger.com/atom/ns#" term="HTML" /><title>Text in textarea chopped off after quote or apostrophe</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/3Xj3QB7tpwoLr9hqaGx2uibk2o4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3Xj3QB7tpwoLr9hqaGx2uibk2o4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/3Xj3QB7tpwoLr9hqaGx2uibk2o4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/3Xj3QB7tpwoLr9hqaGx2uibk2o4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;I had an issue, where the text in a textarea input was being cut off after a quote or apostrophe. &amp;nbsp;The form was submitting to a ‘confirm’ mode, which displayed the details entered into the form back to the user for confirmation. &amp;nbsp;The details were being passed between each page/mode using hidden fields. &amp;nbsp;I found that if there was a quote or apostrophe in the text entered into the textarea field, it would be chopped of once the data had been submitted, or if pressing the ‘modify’ button on the confirm page. &amp;nbsp;After having a look at the page source of the confirm page, I noticed that the value from the textarea field which was being stored in a hidden variable spanned across multiple lines in the code. &amp;nbsp;As the value of the hidden text field was wrapped in quotation marks, the result was that the parser would stop think that the textarea content had finished. &amp;nbsp;As the content spanned across multiple lines, the parser would resume rendering the page content even though it was still within the text inside the hidden field value.



I tried a few things with limited success, including removing all line breaks from the text so that is it rendered on one line as well as encoding the quotation marks when including as an attribute value, but the solution I used was to store the value from the textarea field in a hidden textarea field on the confirm page instead of a hidden input field type. &amp;nbsp;I used the display attribute (display: none) to hide the text area from being displayed on the page.&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/Lx70hjLj7ZQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/6202968941550457923/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/09/text-in-textarea-chopped-off-after.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6202968941550457923?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6202968941550457923?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/09/text-in-textarea-chopped-off-after.html" title="Text in textarea chopped off after quote or apostrophe" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CU4MQXs7eyp7ImA9Wx5QGUg.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-6929395202852186677</id><published>2010-09-08T23:48:00.001+10:00</published><updated>2010-09-08T23:53:00.503+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-09-08T23:53:00.503+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint" /><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Development" /><title>SharePoint Development at a Higher Level</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1hcrMa0SqMdQMHy4dVeP9SDNVfg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1hcrMa0SqMdQMHy4dVeP9SDNVfg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1hcrMa0SqMdQMHy4dVeP9SDNVfg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1hcrMa0SqMdQMHy4dVeP9SDNVfg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;SharePoint development may be required to provide an environment that is custom to a business as well as to enable additional features and integrate with existing and new technologies.&amp;nbsp; Many companies provide consulting services for SharePoint, allowing an understanding to be gained on the capabilities of the core features provided by SharePoint, and how they can be utilised or developed to build solutions for the business.&amp;nbsp; Custom SharePoint Development may include anything from the construction of an intranet environment to the development of complex workflow involving many people within the business, that may also draw from a range of existing sources for data such as project reporting or accounting systems.



An Intranet environment would generally have appropriate team sites created for each division or team within the business, including document management tools, team communication and collaboration, task and resource management, security, etc.&amp;nbsp; Document repositories with version control and approval workflow can allow business documentation, forms and form templates to be maintained, distributed and controlled securely from a central or many locations.



Once configured and secured on the network of a business, SharePoint provides a large range of easy to use features for creating and configuring sites, groups and permissions, individual lists &amp;amp; libraries such as calendars, tasks, discussions and document/form libraries and basic workflow.&amp;nbsp; With sufficient permission to a site collection, new sites, workspaces and site components can be created and maintained easily using the list / site settings &amp;amp; other components of the web interface provided by SharePoint.



Some organisations may require custom SharePoint development to build solutions that automate existing processes within the business to improve efficiency and reduce the chance of human error.&amp;nbsp; This may even include the development of a web facing form for...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/4csfYnv5Zdw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/6929395202852186677/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/09/sharepoint-development-at-higher-level.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6929395202852186677?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6929395202852186677?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/09/sharepoint-development-at-higher-level.html" title="SharePoint Development at a Higher Level" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;Ck8FQXo5cCp7ImA9WhdVEUs.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-6423542108476378343</id><published>2010-08-31T20:30:00.001+10:00</published><updated>2011-09-16T18:13:30.428+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-16T18:13:30.428+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="RSS Generator" /><category scheme="http://www.blogger.com/atom/ns#" term="Php" /><category scheme="http://www.blogger.com/atom/ns#" term="Php RSS 2 Writer" /><category scheme="http://www.blogger.com/atom/ns#" term="RSS Writer" /><category scheme="http://www.blogger.com/atom/ns#" term="CDATA" /><category scheme="http://www.blogger.com/atom/ns#" term="RSS" /><category scheme="http://www.blogger.com/atom/ns#" term="Free Php Scripts" /><title>Php RSS 2 Writer Update (v2.1) - CDATA Enabled</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_nksBlMknSrairC0mPlEp0MQX2E/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_nksBlMknSrairC0mPlEp0MQX2E/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_nksBlMknSrairC0mPlEp0MQX2E/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_nksBlMknSrairC0mPlEp0MQX2E/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;The Php RSS 2.0 Writer class has been recently updated to include the option of writing CDATA in the RSS feed item title or description components.  This allows the feed to be parsed even when the content within a feed item contains special characters that would usually be parsed as an XML element, such as HTML code.  When the xml parser reaches a CDATA tag, the content within will be ignored, allowing special characters to be included in the content.  Please note that you are still required to encode any special character that appears in a CDATA tag, which is commonly '&amp;lt;', '&amp;gt;' and '&amp;amp;' characters.



View more details about the update and the Php RSS 2 Writer class file.  Further information is also available ablut the recent updates to the class as well as general usage information for the class.  The class file and sample constructor is also available for downloaded on this page.



The CDATA update was prompted by an issue someone was having when trying to generate an RSS Feed using the class. View the RSS Feed CDATA Troubleshooting post.



[Update: The Php RSS 2.0 Writer class that this post refers to has been upgraded, and has also moved to a dedicated site.&amp;nbsp; The updated package is now Php FeedWriter, which supports output of multiple RSS formats and also Atom 1.0.&amp;nbsp; A tutorial is available on this blog to help with: Creating a custom feed using Php FeedWriter.&amp;nbsp; A link to download the package for free is available from the post also. ]&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/44S4vb6HPvA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/6423542108476378343/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/08/php-rss-2-writer-update-v21-cdata.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6423542108476378343?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6423542108476378343?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/08/php-rss-2-writer-update-v21-cdata.html" title="Php RSS 2 Writer Update (v2.1) - CDATA Enabled" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;CU8EQngzeyp7ImA9Wx5QEkk.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-3917692801685965517</id><published>2010-08-31T18:35:00.001+10:00</published><updated>2010-08-31T18:36:43.683+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-31T18:36:43.683+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="String Manipulation" /><category scheme="http://www.blogger.com/atom/ns#" term="Security" /><category scheme="http://www.blogger.com/atom/ns#" term="C#" /><title>C# Generate Random String of a Specific Length</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/J9IqPHh8F2CmpgEbS5uEVAkIgro/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/J9IqPHh8F2CmpgEbS5uEVAkIgro/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/J9IqPHh8F2CmpgEbS5uEVAkIgro/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/J9IqPHh8F2CmpgEbS5uEVAkIgro/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;The following function will generate a random string of the supplied length. &amp;nbsp;The function uses the Random object to generate random integer values that correspond to ASCII values within a specific range (a-z, 0-9). &amp;nbsp;Once a random string has been generated that is the required length, it is then returned.







This can be useful if you are wanting to generate a unique code or id for use in a .NET application, or anything that supports C#. &amp;nbsp;For example, this could be used as an security code for authentication via links in an email. &amp;nbsp;The security code would be unique, and not be included in an email to more than one person. &amp;nbsp;The code can then be used to determine who clicked a link in an email by finding the user who corresponds to the unique code.



Another use may be for general logging/reporting of links clicked in an email to know who clicked a link when other tracking mechanisms are not available. &amp;nbsp;As the email address would need to be know to be able to send an email to the user, it is possible to have a unique code associated with every email that is distributed.







C#:

public String generateRandomString(int length) {
    //Initiate objects &amp;amp; vars    Random random = new Random();
    String randomString = "";
    int randNumber;

    //Loop ‘length’ times to generate a random number or character
    for (int i = 0; i &amp;lt; length; i++)            {
        if (random.Next(1, 3) == 1)
             randNumber = random.Next(97, 123); //char {a-z}
        else
             randNumber = random.Next(48, 58); //int {0-9}

        //append random char or digit to random string
        randomString = randomString + (char)randNumber;
    }
    //return the random string
    return randomString;}&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/1euKRtlMk84" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/3917692801685965517/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/08/c-generate-random-string-of-specific.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3917692801685965517?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/3917692801685965517?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/08/c-generate-random-string-of-specific.html" title="C# Generate Random String of a Specific Length" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total></entry><entry gd:etag="W/&quot;D04BR3Y6fip7ImA9Wx5QEEQ.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-1048914410080529820</id><published>2010-08-30T01:05:00.002+10:00</published><updated>2010-08-30T01:32:36.816+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-30T01:32:36.816+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Windows Phone 7" /><category scheme="http://www.blogger.com/atom/ns#" term="SDK" /><category scheme="http://www.blogger.com/atom/ns#" term="Development Resources" /><category scheme="http://www.blogger.com/atom/ns#" term="Developer Tools" /><title>Windows Phone 7 Development Resources</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/z2vVV_QIDxFPAECejD6UFZU-qvs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/z2vVV_QIDxFPAECejD6UFZU-qvs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/z2vVV_QIDxFPAECejD6UFZU-qvs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/z2vVV_QIDxFPAECejD6UFZU-qvs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;The following page lists some good Windows Phone 7 Development articles and resources: Local database support for Windows Phone 7, Windows Phone 7 SDK, SharePoint &amp;amp; Windows Phone 7, Windows Phone 7 Development Training, Developer Tools and much more.



See: Windows Phone 7 Development&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/ll1zKW9wl0I" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/1048914410080529820/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/08/windows-phone-7-development-resources.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/1048914410080529820?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/1048914410080529820?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/08/windows-phone-7-development-resources.html" title="Windows Phone 7 Development Resources" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;Ck4GRXkzeyp7ImA9WhdVEUs.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-2118444004885386377</id><published>2010-08-25T20:47:00.009+10:00</published><updated>2011-09-16T18:15:24.783+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-16T18:15:24.783+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="RSS Generator" /><category scheme="http://www.blogger.com/atom/ns#" term="Php" /><category scheme="http://www.blogger.com/atom/ns#" term="Php RSS 2 Writer" /><category scheme="http://www.blogger.com/atom/ns#" term="RSS Writer" /><category scheme="http://www.blogger.com/atom/ns#" term="CDATA" /><category scheme="http://www.blogger.com/atom/ns#" term="RSS" /><category scheme="http://www.blogger.com/atom/ns#" term="Xml" /><category scheme="http://www.blogger.com/atom/ns#" term="Troubleshooting" /><title>RSS Feed CDATA Troubleshooting</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Dg12tLFdONsDeXSMVIv5jCMa9z8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Dg12tLFdONsDeXSMVIv5jCMa9z8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Dg12tLFdONsDeXSMVIv5jCMa9z8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Dg12tLFdONsDeXSMVIv5jCMa9z8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;RSS2Writer v2.1 has been updated to v3.0 beta.&amp;nbsp; The new version can be downloaded at the Php FeedWriter website:&amp;nbsp; http://PhpFeedWriter.WebmasterHub.net/ 



Php FeedWriter (v3.0 beta) now provides the ability to output to various feed formats.&amp;nbsp; Php FeedWriter can currently generate Atom 1.0, RSS 2.0, RSS 1.0, RSS 0.92 and RSS 0.91 compatible feeds.&amp;nbsp; 



View more information about Php FeedWriter, including online documentation.&amp;nbsp; For information about the latest update and release, see the article Php FeedWriter 3.0 (beta) Released.



A tutorial demonstrating how to build a feed using Php FeedWriter is also available on this blog:

How to Generate Feed Using Php (Atom 1.0 and RSS 2.0 Compatible)





RSS Feed CDATA was not working properly in the Php RSS 2.0 Writer class when trying to generate an RSS feed, as CDATA was not initially supported by the class.  When the CDATA tags were included using '&amp;lt;![CDATA[' . $content . ']]&amp;gt;' as the value in the description element of the field, it didn't work.



Some of the things considered were the RSS feed reader being used to test the feed and if it supported the use of CDATA in an RSS feed, and if special characters were being encoded properly.&amp;nbsp; The intention was to allow content which would usually be parsed as and xml element to be ignored by the parser and included as characters (CDATA).  This applies to a range of characters, but more commonly &amp;amp;,&amp;lt;,&amp;gt;, etc. used in html/xml markup.





Abdul Basit (abasit83) was able to fix the issue by including content in the xml element using the writeCData(...) method provided by the XMLWriter class.





View details about the Php RSS 2.0 Writer class that was being used, and more information about the CDATA mods.



The following resources provide some information about using CDATA in RSS feeds, and XML in general:

·         C.28 When should I use a CDATA Marked Section?

·         CDATA and formattedText in RSS XML

·         RSS...&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/kAuu-0rOBMQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/2118444004885386377/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/08/rss-feed-cdata-troubleshooting.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/2118444004885386377?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/2118444004885386377?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/08/rss-feed-cdata-troubleshooting.html" title="RSS Feed CDATA Troubleshooting" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;D0YBQn85cSp7ImA9Wx5RGU0.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-6381388869829097713</id><published>2010-08-16T22:34:00.002+10:00</published><updated>2010-08-27T20:32:33.129+10:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-08-27T20:32:33.129+10:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Learning Resources" /><category scheme="http://www.blogger.com/atom/ns#" term="News" /><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Designer" /><category scheme="http://www.blogger.com/atom/ns#" term="InfoPath Integration" /><category scheme="http://www.blogger.com/atom/ns#" term="SPD" /><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Integration" /><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint 2010" /><category scheme="http://www.blogger.com/atom/ns#" term="SharePoint Administration" /><category scheme="http://www.blogger.com/atom/ns#" term="InfoPath" /><category scheme="http://www.blogger.com/atom/ns#" term="Workflow" /><category scheme="http://www.blogger.com/atom/ns#" term="Development Resources" /><category scheme="http://www.blogger.com/atom/ns#" term="Web Parts" /><title>InfoPath SharePoint Development</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/TrjJAyJA7kMrmebpkwuLvhVvpic/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TrjJAyJA7kMrmebpkwuLvhVvpic/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/TrjJAyJA7kMrmebpkwuLvhVvpic/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/TrjJAyJA7kMrmebpkwuLvhVvpic/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;SharePoint News &amp;amp; Development Resources

DevSharePoint.com provides the latest SharePoint news and resources. Stay up to date with SharePoint 2010, MOSS 2007, WSS, SharePoint Designer (2007/2010), InfoPath. 



InfoPath &amp;amp; SharePoint Development Tutorials, Resources &amp;amp; How To's

InfoPathSharePoint.net provides the latest InfoPath development tutorials, InfoPath Form Services administration tips, tricks and how to's. InfoPath SharePoint Integration: Integrate InfoPath Forms with SharePoint lists, libraries &amp;amp; workflow. 



SharePoint &amp;amp; InfoPath News &amp;amp; Resources 

SharePoint Administration, Development, Design &amp;amp; Customization Resources from around the internet. SharePoint &amp;amp; InfoPath News. InfoPath SharePoint Integration. InfoPath Form Template Design. InfoPath Form layouts, design tips &amp;amp; techniques.&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/7-jYV8pt_2A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/6381388869829097713/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/08/infopath-sharepoint-development.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6381388869829097713?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/6381388869829097713?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/08/infopath-sharepoint-development.html" title="InfoPath SharePoint Development" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total></entry><entry gd:etag="W/&quot;AkMDQX49fyp7ImA9WxBbF0Q.&quot;"><id>tag:blogger.com,1999:blog-3808846106371591937.post-4662714547956419947</id><published>2010-03-16T21:57:00.000+11:00</published><updated>2010-03-17T15:01:10.067+11:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-17T15:01:10.067+11:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="String Manipulation" /><category scheme="http://www.blogger.com/atom/ns#" term="VBScript" /><title>Post Update: VBScript String Clean Functions -3 Methods to Remove or Replace Characters in a String</title><content type="html">
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uMd4vdl_bjQJtPtWwTRZlaCbA98/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uMd4vdl_bjQJtPtWwTRZlaCbA98/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/uMd4vdl_bjQJtPtWwTRZlaCbA98/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uMd4vdl_bjQJtPtWwTRZlaCbA98/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;The following post has been updated to include a number of different methods to remove characters from strings in VBScript.

Remove or Replace Characters using regular Expressions Remove or Replace Characters using the Replace Function Remove or Replace Characters without using the Replace Function 
Details are also provided to remove from a specified set of charcters if found in the input string, or to remove all character expept a rage, such as 0-9, a-z, and A-Z.
VBScript String Clean Functions -3 Methods to Remove or Replace Characters in a String - Code-Tips.com&lt;br/&gt;
&lt;br/&gt;
Please click the title to view the full article.&lt;img src="http://feeds.feedburner.com/~r/Code-tipscom-WebDevelopmentProgramming/~4/UbQ0bVvIOuc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.code-tips.com/feeds/4662714547956419947/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.code-tips.com/2010/03/post-update-vbscript-string-clean.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/4662714547956419947?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3808846106371591937/posts/default/4662714547956419947?v=2" /><link rel="alternate" type="text/html" href="http://www.code-tips.com/2010/03/post-update-vbscript-string-clean.html" title="Post Update: VBScript String Clean Functions -3 Methods to Remove or Replace Characters in a String" /><author><name>DanielS</name><uri>http://www.blogger.com/profile/07274977002584498975</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total></entry></feed>

