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

<channel>
	<title>Dashboard Developers</title>
	<atom:link href="http://www.dashboarddev.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dashboarddev.com</link>
	<description>PHP Developer News and Applications</description>
	<lastBuildDate>Fri, 14 May 2010 10:11:57 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Learn a little more about application servers</title>
		<link>http://www.dashboarddev.com/learn-a-little-more-about-application-servers/</link>
		<comments>http://www.dashboarddev.com/learn-a-little-more-about-application-servers/#comments</comments>
		<pubDate>Fri, 14 May 2010 10:08:08 +0000</pubDate>
		<dc:creator>Writingstar4u</dc:creator>
				<category><![CDATA[Application Servers]]></category>
		<category><![CDATA[application server]]></category>
		<category><![CDATA[Red Hat and Novell]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[•	Microsoft Windows server 2008]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/?p=117</guid>
		<description><![CDATA[An application server, in simple words, is a software framework that executes routines, scripts, programs and other procedures. When you talk about servers, you are presented with two basic types of them, which are Application Servers and Web Servers. Application Servers are also called middleware application servers which handle the database servers and the end [...]]]></description>
			<content:encoded><![CDATA[<p>An application server, in simple words, is a software framework that executes routines, scripts, programs and other procedures. When you talk about servers, you are presented with two basic types of them, which are Application Servers and Web Servers. Application Servers are also called middleware application servers which handle the database servers and the end user. They serve as the connecting link between the two.</p>
<p>However, it is important to mention that there are further classifications of application servers. The list of the three most important kinds of Application Servers is:</p>
<p>1 Audio and Video Servers</p>
<p>These are the servers that allow websites to have and broadcast streaming multimedia videos. The importance of these types of servers is on an upsurge, as video marketing is now growing in popularity.</p>
<p>2 Chat Servers</p>
<p>These allow several users to be able to exchange information such as for newsgroups and have the added facilities of real-time discussion. If you have an account on certain social networks like Facebook or Orkut, you should know that you can perform many tasks due to chat servers.</p>
<p>3. Fax Servers are one of the oldest, and enable the safe and secure transfer of your files from one computer to another. The files transferred are organized according to the actual documents sent across.</p>
<p>Choosing the right kind of application server is extremely important for your website as that is what will decide the speed at which the customer is able to view it. If it is not fast enough, the customer might very well lose interest and hence take business elsewhere.</p>
<p>A good application server must be able to:</p>
<ul>
<li>Download files and applications without any bottleneck</li>
<li>The time taken between the entire process of request and send      must be not more than a few seconds</li>
<li>It must take into account different ways that your clients will      be able to view and download the site in different parts of the world</li>
</ul>
<p>Before you decide on which application server to opt for, you must consider the needs of the website and business, the time and technical expertise that you have at your disposal to set it up and maintain it. Moreover, you need to consider the prices.</p>
<p>The Prices of a few popular Application Servers are:</p>
<ul>
<li>
<ul>
<li>Microsoft Windows server 2008 at a Standard       Edition of $1000 and the Enterprise Edition at 4000</li>
<li>Solaris – can be downloaded free and support       bought at $720 annually.</li>
<li>Linux which offers Red Hat and Novell. The       code used can be modified and used for different kinds of hardware</li>
</ul>
</li>
</ul>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/learn-a-little-more-about-application-servers/">Learn a little more about application servers</a> was first posted on May 14, 2010 at 5:08 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/learn-a-little-more-about-application-servers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web application development and the way to find a pro developer</title>
		<link>http://www.dashboarddev.com/web-application-development-and-the-way-to-find-a-pro-devloper/</link>
		<comments>http://www.dashboarddev.com/web-application-development-and-the-way-to-find-a-pro-devloper/#comments</comments>
		<pubDate>Wed, 12 May 2010 10:08:36 +0000</pubDate>
		<dc:creator>Writingstar4u</dc:creator>
				<category><![CDATA[Web Application Development]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/?p=115</guid>
		<description><![CDATA[The role of a web application developer is quite important in today’s IT centric world. A developer is the person who allows the access of applications through web browsers either via the internet or intranet.
There are several web application frameworks that allow one to develop web applications quickly and with minimal amounts of errors. Try [...]]]></description>
			<content:encoded><![CDATA[<p>The role of a web application developer is quite important in today’s IT centric world. A developer is the person who allows the access of applications through web browsers either via the internet or intranet.</p>
<p>There are several web application frameworks that allow one to develop web applications quickly and with minimal amounts of errors. Try <a href="http://www.extropia.com/tutorials/devenv/toc.html" target="_blank">http://www.extropia.com/tutorials/devenv/toc.html</a></p>
<p>When you learn web application development, you are charting out a path to enhance your career goals in an extremely competitive professional field. It will help you learn the latest techniques and certification courses will help brand you as an expert in web application development.</p>
<p>There are several technologies that one needs to keep abreast of in order to be able to perform web application development tasks. These are Ajax, <a href="http://asp.net/" target="_blank">asp.net</a>, CGI, ColdFusion, JavaScript and Perl to name a few.</p>
<p>In addition to these technologies, there are several tools that the web application developer can use based on the technologies that he/she is working with. These could be Microsoft Visual Studio, Dreamweaver, CFEclipse plugin, debugging tools, different browsers, FTP clients and so forth.</p>
<p>There are several web application developers to be found online. However, before you do so you need to understand that there are basically four stages in the web application process:</p>
<ul>
<li>Deciding the nature of the project</li>
</ul>
<p>This is the stage when you decide what kind of website you have in mind. Look at a few websites of similar products and other kinds of products and decide how you would want your website to look at the end. Define a competitive analysis of these sites and the things they have got right. If you are working with a professional web application developer then ask relevant and probing questions. Lots of questions at this stage will enable you to have the arsenal of information.</p>
<ul>
<li>Finalizing the plan by consulting with all the stakeholders and      taking their suggestions.</li>
<li>The development by finalizing the team</li>
<li>Testing the viability and stability of the site</li>
</ul>
<p>There are several companies online that will help you develop your site step by step or help you with the technical expertise.</p>
<p>However, keep in mind that the more time you have spent at the drawing board will enable you to get a website that has a good interface, is perfectly functional and drives traffic in your websites direction. So, take your time and make an informed decision when selecting a web application development.</p>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/web-application-development-and-the-way-to-find-a-pro-devloper/">Web application development and the way to find a pro developer</a> was first posted on May 12, 2010 at 5:08 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/web-application-development-and-the-way-to-find-a-pro-devloper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Few easy ways of learning C programming</title>
		<link>http://www.dashboarddev.com/few-easy-ways-of-learning-c-programming/</link>
		<comments>http://www.dashboarddev.com/few-easy-ways-of-learning-c-programming/#comments</comments>
		<pubDate>Mon, 10 May 2010 10:09:02 +0000</pubDate>
		<dc:creator>Writingstar4u</dc:creator>
				<category><![CDATA[C programming]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/?p=113</guid>
		<description><![CDATA[Once you have learned the nuances of C programming you will be able to create the most fantastic of websites and interfaces. C programming is one code that helps you control the computer and get what you want out of it.
In order to learn more about it, the first thing to do is download and install [...]]]></description>
			<content:encoded><![CDATA[<p>Once you have learned the nuances of C programming you will be able to create the most fantastic of websites and interfaces. C programming is one code that helps you control the computer and get what you want out of it.</p>
<p>In order to learn more about it, the first thing to do is download and install the free Microsoft Visual Studio 2008 C++ Compiler. This is one program that will leverage your C programming learning and enable you to not only enjoy coding but also enable you to make a lucrative career out of it.</p>
<p>The steps to getting your very first C programming in place are:</p>
<ul>
<li>Once the code has been installed you need to debug it. This can      be done by going to the top of the compiler and click on the Start      debugging option.</li>
<li>The next step will be the opening up of a black window, which      will be asking you to select a number between 1 and 50. That is how simple      it is to create the most basics of C programming codes.</li>
</ul>
<p>However, there are several different ways to get started with C programming.  For instance;</p>
<ul>
<li>You can opt to learn detailed C programming from the various free web tutorials that walk you through several steps. There are tutorials that guide you through the most rudimentary of C programming steps hence you need not worry if you have never done any programming before this. It will give you an overall idea of working with programs especially C programming.</li>
</ul>
<p><a href="http://www.cprogramming.com/tutorial/lesson1.html" target="_blank">http://www.cprogramming.com/tutorial/lesson1.html</a></p>
<p><a href="http://www.learn-programming.za.net/programming_c_learn01.html" target="_blank">http://www.learn-programming.za.net/programming_c_learn01.html</a></p>
<p><a href="http://johnt.tripod.com/c.html" target="_blank">http://johnt.tripod.com/c.html</a></p>
<ul>
<li>There are several books to help you get the best out of C programming. There are some absolutely free books online to get you started:</li>
</ul>
<p><a href="http://www.computer-books.us/c.php" target="_blank">http://www.computer-books.us/c.php</a></p>
<p><a href="http://www.techbooksforfree.com/ccpp.shtml" target="_blank">http://www.techbooksforfree.com/ccpp.shtml</a></p>
<p>The most preferred books in hard copies are:</p>
<p>C programming by K. N. King</p>
<p>C++ Primer (4th Edition) by Stanley B Lippman, Josee Lajoie and Barbara Moo is said to be the book for everything that you ever wanted to know about C programming including tips, warnings and helpful suggestions.</p>
<ul>
<li> There are some wonderful tools available online that will accelerate your learning of C programming:</li>
</ul>
<p><a href="http://www.freebyte.com/programming/cpp/" target="_blank">http://www.freebyte.com/programming/cpp/</a></p>
<p><a href="http://www.codecutter.net/tools/quincy/" target="_blank">http://www.codecutter.net/tools/quincy/</a></p>
<ul>
<li>After you have had an idea of what’s there in C programming, you could sign up for a few courses which could be instructor led or online. Some online courses are:</li>
</ul>
<p><a href="http://www.e-learningcenter.com/c_programming.htm" target="_blank">http://www.e-learningcenter.com/c_programming.htm</a></p>
<p><a href="http://apex.vtc.com/c-programming.php" target="_blank">http://apex.vtc.com/c-programming.php</a></p>
<p>After you have done all of this you might want to read Posts from different programmers about C programming. This is where you can search other sites, blogs and forums over the internet. So, the fact of the matter is that though you need to invest a lot of time in learning the ropes, but you will eventually be able to handle things on your own. So, start from today!</p>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/few-easy-ways-of-learning-c-programming/">Few easy ways of learning C programming</a> was first posted on May 10, 2010 at 5:09 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/few-easy-ways-of-learning-c-programming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learning PHP</title>
		<link>http://www.dashboarddev.com/learning-php/</link>
		<comments>http://www.dashboarddev.com/learning-php/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 14:54:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP Tutorials]]></category>
		<category><![CDATA[Central Reason]]></category>
		<category><![CDATA[Html Forms]]></category>
		<category><![CDATA[Multitude]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/learning-php/</guid>
		<description><![CDATA[
PHP is the world&#8217;s most popular web development language. Started by Danish-Greenlandic programmer Rasmus Lerdorf in 1995 it is now installed on more than 20 million websites and 1 million web servers and counting.It is estimated that for every 100 PHP developers, there are 42 Perl developers, 12 Python developers and 4 Ruby developers &#8211; [...]]]></description>
			<content:encoded><![CDATA[<div style="float:left; padding: 12px"><a href="/wp-content/uploads/2009/09/php_tutorial25.jpg"><img src="/wp-content/uploads/2009/09/php_tutorial25.jpg" title='' alt='' /></a></div>
<div>PHP is the world&#8217;s most popular web development language. Started by Danish-Greenlandic programmer Rasmus Lerdorf in 1995 it is now installed on more than 20 million websites and 1 million web servers and counting.<br/><br/>It is estimated that for every 100 PHP developers, there are 42 Perl developers, 12 Python developers and 4 Ruby developers &#8211; PHPs popularity is the central reason why you should consider learning it above all others.<br/><br/>PHP is the basis of Content Management Systems such as Drupal, Joomla and WordPress so gaining a knowledge of PHP would help you in using these scripts.<br/><br/>Presumably your are already proficient with CSS and HTML and want to take your web creativity to another level. If you aren&#8217;t, then stop right here. It&#8217;s unthinkable to tackle PHP without a firm grounding in HTML and a good knowledge of CSS would be extremely useful.<br/><br/>You don&#8217;t have to have a complete knowledge of HTML in order to learn PHP but you certainly need to know the basics &#8211; the rest you will pick up in tandem with PHP. For instance, if you use Content Management Systems all the time you&#8217;ll unlikely to be that familiar with coding forms, but HTML forms are an essential part of PHP and you&#8217;ll need to be able to create them quickly and without fuss.<br/><br/>Learning PHP is as hard as you can imagine it to be. You need time and lots of patience and preferably a reality you need to escape from for an inordinate amount of time. It&#8217;s a good idea to pace yourself and set a two year framework in order to become familiar with the core of the language.<br/><br/>Prepare yourself for headaches and frustration and a slow, boring learning curve as it&#8217;s on about the same thrill level as a crossword or Sudokus puzzle.<br/><br/>You must be familiar with the multitude of Photoshop net tutorials out there &#8211; you know, the ones that engage you with a step-by-step guide and lots of pretty pictures. Well there is nothing comparable in PHP.<br/><br/>It may be unfair to compare photo manipulation software to a programming language, but even the Ruby crew manage to add a bit of bling to their learning process.<br/><br/>Of course, there is satisfaction at creating your first form or web application &#8211; to actually create a working item is a tremendous achievement when you are starting out.<br/><br/>So what makes a good PHP programmer? It is the ability to write effective, secure code quickly. Effective means using as little code as possible for the task at hand as well as learning which code is the least wasteful on your server resources (this is technically called refactoring). Secure means that your code is as safe as possible from malicious users and crackers.<br/><br/>To be a quick PHP coder means that you have a thorough knowledge of the syntax and functions as well as library of code which you have created and testing on live websites and that you can bring into new web developments.<br/><br/>You&#8217;ll often read a reference to &#8220;clean code&#8221; amongst PHP heads (and all other code writers for that matter) and above is essentially what they mean by this term.<br/><br/>If you really want to learn PHP though I can guarantee one thing: that you will succeed if you have enough time and are determined enough.<br/><br/>Nobody is born to code PHP &#8211; expertise will come about through you applying yourself.<br/><br/><br/><br/><em>By: <strong>Andy Johnson</strong></em><br/><br/><strong>About the Author:</strong>
<div style="border: thin solid gray; background-color: #E2E089; padding:1em;">
Andy Walpole is a web designer and developer and can be found at <a href="http://www.suburban-glory.com/blog.html">Suburban Glory Web Design</a>.
</div>
<p><br/><br/></div>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/learning-php/">Learning PHP</a> was first posted on December 28, 2009 at 9:54 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/learning-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Self-taught Php/mysql: a Simple Page Counter Tutorial</title>
		<link>http://www.dashboarddev.com/self-taught-phpmysql-a-simple-page-counter-tutorial/</link>
		<comments>http://www.dashboarddev.com/self-taught-phpmysql-a-simple-page-counter-tutorial/#comments</comments>
		<pubDate>Sat, 26 Dec 2009 14:21:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP Tutorials]]></category>
		<category><![CDATA[Dollar Signs]]></category>
		<category><![CDATA[Increment]]></category>
		<category><![CDATA[Web Page Copy]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/self-taught-phpmysql-a-simple-page-counter-tutorial/</guid>
		<description><![CDATA[
Self-Taught PHP/MYSQL: a simple Page CounterThis article is a short introduction to PHP and MySQL using the example of a simple page counter. I will illustrate creating the database in MySQL, connecting to the database from the PHP script, querying the database for information, displaying the information in a web page, and writing the information [...]]]></description>
			<content:encoded><![CDATA[<div style="float:left; padding: 12px"><a href="/wp-content/uploads/2009/09/php_tutorial9.jpg"><img src="/wp-content/uploads/2009/09/php_tutorial9.jpg" title='' alt='' /></a></div>
<div>Self-Taught PHP/MYSQL: a simple Page Counter<br/><br/>This article is a short introduction to PHP and MySQL using the example of a simple page counter. I will illustrate creating the database in MySQL, connecting to the database from the PHP script, querying the database for information, displaying the information in a web page, and writing the information back to the database. As always, the fastest way to master the process is to jump right in with the code, look it over and use it. We’ll make a MySQL database to store the page names and the number of page views, and use PHP to increment and display the count on a web page. First here is all of the code, and then I’ll go over it in detail:<br/><br/>This goes into a file called “pagecounter.php”<br/><br/><br/><br/>You’ll no doubt have noticed that the script “includes” another, so without further delay here is the “connect.php” file:<br/><br/><br/><br/>The pagecounter.php script needs a database to operate on. Just briefly, here’s how to create it.<br/><br/>Creating the database:<br/><br/>Log in to MySQL at your Unix prompt (which might be #):<br/><br/># mysql –uYourUserName –pYourPassword<br/><br/>At the MySQL prompt enter these commands:<br/><br/>mysql> create database pages;<br/><br/>mysql> use pages;<br/><br/>mysql> create table counter (pagename varchar(60),hits int, stamp timestamp);<br/><br/>mysql> quit;<br/><br/>Naturally you can create the database and table with utilities or web-based interfaces, but doesn’t it seem simpler to just enter three commands?<br/><br/>If you just wanted some code for a simple counter, this is all you need. Put this text into an SHTML web page, or this text into a php web page, copy the above two files into the same directory, and you’re done.<br/><br/>The first thing you’ll have noticed about the scripts are the dollar signs ($). All variables in PHP scripts start with a $. Anything starting with a $ is a variable. Instructions &#8211; statements and functions – end with a semicolon (;).  starts the script and it ends with . When your script is hosed, look at these first.<br/><br/>Details about the pagecounter.php script<br/><br/>Line 1<br/><br/> include_once &#8220;connect.php”; <br/><br/>The first line in the script is just what it appears to be. It includes whatever is in the file “connect.php”. The “_once” means that it’s only included once, even if you had the line twice in the script. The reason I’ve separated it out is that it’s all the connection stuff to the database. All the php/Mysql scripts will need it, it’s always the same, so you can just put it by itself and use the include function.<br/><br/>Line 2<br/><br/>$pagename=$_SERVER["REQUEST_URI"];<br/><br/>The next line creates a variable called $pagename and sets the value to a special pre-defined variable $_SERVER["REQUEST_URI"]. The brackets [ ] are used by arrays in php. $_SERVER is a pre-defined array of headers and paths. This particular one is the name of the file that accesses the script, i.e., the name of the page that the counter is in.<br/><br/>Line 3<br/><br/>$result=mysql_query(&#8220;Select * from counter where pagename=&#8217;$pagename&#8217;&#8221;);<br/><br/>All the database work is done with mysql_query, which sends an SQL command string to MySQL, after you’ve already logged in and connected to the database with the connect.php script. &#8220;Select * from counter where pagename=&#8217;$pagename&#8217;&#8221; replaces $pagename with its value. But there’s a quirk here – the single quotes have to be inside the double quotes. If I had it the other way around, with the single quotes outside, the query would be for the text “$pagename” instead of the value. $result is the result set. It can be any name but in tutorial scripts it’s always $result, so it is here.<br/><br/>Line 4<br/><br/>if (mysql_num_rows($result)==0){ <br/><br/>The fourth line is the php version of “if-then”. It simply checks whether there are any results from the query in line 3. The syntax is representative of php coding in general so it’s a good place to start. The curly brackets { } are used to group instructions. The curved brackets ( ) are used for the “if” condition. Everything inside the curly brackets will be executed if the “if” condition is true. PHP uses double equals == for comparison; if I had used only a single equal sign it would try to set mysql_num_rows to 0, which wouldn’t work for our purposes. A missing equal sign is the second thing to look for when your script is hosed and it’s not missing a $ or ;.<br/><br/>Line 5<br/><br/>mysql_query(&#8220;insert into counter (pagename,hits) values (&#8216;$pagename&#8217;,'0&#8242;)&#8221;); }<br/><br/>Inside the brackets, which only happens when line 4 finds no records of the page we searched for, the instruction creates a new record with the page’s name and zero for the hit count. Although mysql_query is a function, it doesn’t necessarily need a variable $result= in front of it. That’s optional in PHP if you don’t care about the return value.<br/><br/>The closing curly bracket } from the “if” statement comes here, since we only needed one statement to create our record.<br/><br/>Line 6<br/><br/>$count=mysql_result($result, 0, &#8220;hits&#8221;); <br/><br/>mysql_result fetches the actual data from the result set. You specify the result set (from mysql_query), the row number (0), and the column name (“hits”). This is a little confusing at first since to get here took four steps: 1) log into MySQL, 2) connect to the database, 3) select data from the table, and 4) fetch a particular piece of the data. Putting the repetitive first two steps into an include file where you can more or less forget about them makes it more intuitive: use SQL to select data with mysql_query, and then retrieve data with mysql_result.<br/><br/>Line 7<br/><br/>$count=$count + 1; <br/><br/>Just adds one to the count variable. This is the count of the page views of the page requesting the script.<br/><br/>Line 8<br/><br/>mysql_query (&#8220;update counter set hits=$count where pagename=&#8217;$pagename&#8217;&#8221;);<br/><br/>As with Line 5 we send an SQL command directly to MySQL. This one updates the count for just the page matching the variable $pagename.<br/><br/>Line 9<br/><br/>echo &#8220;Page Count: &#8220;.$count; <br/><br/>The echo function writes text to a web page, in this case the text “Page Count: “ followed by whatever value is in $count. The period in between is the PHP concatenation operator: it simply adds the two strings together. Echo sees it as one string and outputs it.<br/><br/>Details about the connect.php script: <br/><br/>All this script does is connect to the MySQL server and select the Database.<br/><br/>Line 1<br/><br/>$host=&#8221;localhost&#8221;;$user=&#8221;YourUserName&#8221;;$password=&#8221;YourPassword&#8221;;$dbase=&#8221;pages&#8221;;<br/><br/>These are the inputs for the connect and select_db functions. Naturally you can insert the values into the functions on line 3 and 4 and eliminate this line, but it’s simpler to change later (when you re-use this code for example) if you just list them out at the top. The host and dbase won’t need to be changed in this example. The user and password are specific to your MySQL setup. As shown here you can put as many statements on one line as you want; PHP doesn’t care.<br/><br/>Line 2<br/><br/>// change the user and password to your MySQL user and password<br/><br/>The double slashes // denote a comment line that is ignored by php. Each comment line needs the slashes.<br/><br/>Line 3<br/><br/>$connect = mysql_connect($host,$user,$password); <br/><br/>You log into your MySQL with the mysql_connect command. You would change the host from “localhost” to the database server if you were accessing MySQL from another server, provided you’ve set up the access rights for the specified user/<br/><br/>Line 4<br/><br/>mysql_select_db($dbase,$connect); <br/><br/>Since we can have multiple databases in the MySQL server, we have to select one before sending SQL statements to it. As I mentioned earlier, this part is repetitive, and once it’s in this file and working you can forget about it.<br/><br/>In this tutorial we’ve examined a simple but functional web page counter implemented with PHP/MySQL. We examined the basic syntax of PHP statements and variables, the PHP “include” function and “if” control function, and the fundamental PHP MySQL functions mysql_connect, mysql_select_db, mysql_query, mysql_num_rows, and mysql_result. For further reference the reader should bookmark http://dev.mysql.com/doc/refman/6.0/en/index.html and http://us.php.net/manual/en/funcref.php .<br/><br/>Bill Hamilton is a former Database Administrator for United News and Media, and VNU inc. He currently operates several php/mysql driven websites including Gemstones and Beads<br/><br/><br/><br/><em>By: <strong>Bill Hamilton</strong></em><br/><br/><strong>About the Author:</strong>
<div style="border: thin solid gray; background-color: #E2E089; padding:1em;">
<p>Bill Hamilton is a former Database Administrator for United News and Media, and VNU inc.  He currently operates several php/mysql driven websites including <a href="http://www.mysticgemcreations.com">Gemstones and Beads</a></p>
</div>
<p><br/><br/></div>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/self-taught-phpmysql-a-simple-page-counter-tutorial/">Self-taught Php/mysql: a Simple Page Counter Tutorial</a> was first posted on December 26, 2009 at 9:21 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/self-taught-phpmysql-a-simple-page-counter-tutorial/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Crop Image File Size, Width &amp; Height Using Php Script</title>
		<link>http://www.dashboarddev.com/crop-image-file-size-width-height-using-php-script/</link>
		<comments>http://www.dashboarddev.com/crop-image-file-size-width-height-using-php-script/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 16:13:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP Tutorials]]></category>
		<category><![CDATA[Lettering]]></category>
		<category><![CDATA[Resize Images]]></category>
		<category><![CDATA[Vital Information]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/crop-image-file-size-width-height-using-php-script/</guid>
		<description><![CDATA[
Crop Images ContextuallyCrop images contextually for faster downloads and higher impact. By cropping maximally and resizing you can convey meaning without slowing down your web pages.However, we&#8217;ve seen many sites that either use HTML&#8217;s width and height attributes to resize larger images, or minimally crop and resize images to lose vital information. A better way [...]]]></description>
			<content:encoded><![CDATA[<div style="float:left; padding: 12px"><a href="/wp-content/uploads/2009/09/php_tutorial35.jpg"><img src="/wp-content/uploads/2009/09/php_tutorial35.jpg" title='' alt='' /></a></div>
<div><strong>Crop Images Contextually</strong><br/><br/>Crop images contextually for faster downloads and higher impact. By cropping maximally and resizing you can convey meaning without slowing down your web pages.<br/><br/>However, we&#8217;ve seen many sites that either use HTML&#8217;s width and height attributes to resize larger images, or minimally crop and resize images to lose vital information. A better way to create images optimized for the Web is to crop them contextually.<br/><br/><strong><br/><br/>Contextually Cropping</strong><br/><br/>What is cropping contextually? Many times digital images shot for Web use have a border of useless space around the object(s) of interest. Rather than crop to just the film or chip&#8217;s border, crop contextually down to the minimum dimensions that still convey the meaning or context of your image.<br/><br/>Note how the author is now more recognizable in the cropped version (behind the sunscreen) and the lettering is larger and more legible. Most importantly, the image has more impact, with the subject taking up more of the frame. This cropped image could be shown with a smaller dimension, saving file size.<br/><br/><strong>Resize to a Smaller Thumbnail</strong><br/><br/>Once you&#8217;ve got your image maximally cropped, resize and sharpen it to create a smaller thumbnail image. To give the reader more detail, you can provide a larger version (cropped or uncropped) of the image linked to that thumbnail.<br/><br/>This two-step process of cropping maximally and resizing is what Jakob Nielsen calls &#8220;relevance-enhanced image reduction.&#8221; Nielsen writes that by combining cropping and scaling you can &#8220;preserve both content and detail, even at very small sizes.&#8221; (Nielsen 2000)<br/><br/><strong>Extreme Closeup for a Sneak Preview</strong><br/><br/>Some high fashion sites actually use only the important part of an image as a thumbnail. For example, just the shoulder or neckline of a style &#8211; click and you get the full shots with details. This &#8220;image tease&#8221; technique can add an artistic feel to a site. Let&#8217;s get up close and personal with our intrepid traveler.<br/><br/><strong>Extreme Cropping through Rearrangement</strong><br/><br/>In extreme cases you could rearrange the target objects and reshoot, or move them closer together in your favorite image editing program. The idea is to use the smallest possible image that still conveys the information you want to display. You may need to bump up font sizes to withstand more extreme image reductions.<br/><br/><strong>JPEG Cropping Caution</strong><br/><br/>Be careful when resaving JPEG images. Reoptimizing an existing JPEG can compound compression artifacts. It is possible to transform JPEGs losslessly, however. Lossless transformations (like 90-degree rotations and flips) require the dimensions of the JPEG to be a multiple of the block size (16&#215;16, 16&#215;8, or 8&#215;8 pixels for color JPEGs). Lossless crops are also possible by cropping to block boundaries with specialized software, like JPEG Wizard.<br/><br/><br/><br/><em>By: <strong>Asif Khalyani</strong></em><br/><br/><strong>About the Author:</strong>
<div style="border: thin solid gray; background-color: #E2E089; padding:1em;">
<p>I am Asif Khalyani. I am software Engineer. PHP and ajax free script download site <a href="http://www.phpasks.com">phpasks</a>. User can download <a href="http://www.phpasks.com">free php script</a>.</p>
</div>
<p><br/><br/></div>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/crop-image-file-size-width-height-using-php-script/">Crop Image File Size, Width &#038; Height Using Php Script</a> was first posted on December 17, 2009 at 11:13 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/crop-image-file-size-width-height-using-php-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Photoshop Tutorial &#8211; Pen Tooling</title>
		<link>http://www.dashboarddev.com/photoshop-tutorial-pen-tooling/</link>
		<comments>http://www.dashboarddev.com/photoshop-tutorial-pen-tooling/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 10:10:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP Tutorials]]></category>
		<category><![CDATA[Adobe Systems]]></category>
		<category><![CDATA[Arsenal]]></category>
		<category><![CDATA[Brush Tool]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/photoshop-tutorial-pen-tooling/</guid>
		<description><![CDATA[
&#8216;Adobe Photoshop, or simply Photoshop, is a graphics editing program developed and published by Adobe Systems. It is the current and primary market leader for commercial bitmap and image manipulation, and is the flagship product of Adobe Systems. It has been described as &#8220;an industry standard for graphics professionals&#8221;[1] and was one of the early [...]]]></description>
			<content:encoded><![CDATA[<div style="float:left; padding: 12px"><a href="/wp-content/uploads/2009/09/php_tutorial20.jpg"><img src="/wp-content/uploads/2009/09/php_tutorial20.jpg" title='' alt='' /></a></div>
<div>&#8216;Adobe Photoshop, or simply Photoshop, is a graphics editing program developed and published by Adobe Systems. It is the current and primary market leader for commercial bitmap and image manipulation, and is the flagship product of Adobe Systems. It has been described as &#8220;an industry standard for graphics professionals&#8221;[1] and was one of the early &#8220;killer applications&#8221; on the Macintosh&#8217;<br/><br/>This was the first tutorial I ever did!<br/><br/>I created it originally for another site, so sorry for any irregular references.<br/><br/>Hey guys, this is a tutorial for pen tooling, present on my current signature. I hope you enjoy this and would love to see some results <img src='http://www.dashboarddev.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Pen tooling is a great tool in any graphic artist&#8217;s arsenal.<br/><br/>This should be done on a new layer, for every line you do <img src='http://www.dashboarddev.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> <br/><br/>Generally you should use relevant colours to the piece, if you can add a white or black with it. I will use blue just so you can see clearly what I’m doing.<br/><br/>Step 1:<br/><br/>Set your brush tool to a hard brush, 3-12 pixels depending on the thickness of the line you are aiming for.<br/><br/>Image cannot be shown in this article.<br/><br/>Step 2:<br/><br/>Make sure you&#8217;re using the &#8216;paths&#8217; version of the pen tool. (top left corner)<br/><br/>Select the pen tool and click twice, forming a ‘straight line’, as shown.<br/><br/>Image cannot be shown in this article.<br/><br/>Step 3:<br/><br/>Click and hold the line anywhere you like, you’ll see you can now bend the line around. Do this until you have something you like <img src='http://www.dashboarddev.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  (not on the same click and hold)<br/><br/>Image cannot be shown in this article.<br/><br/>&#8230;<br/><br/>&#8230;<br/><br/>For the full tutorial, visit this page; http://signatureshelf.com/forum/viewtopic.php?f=25&amp;t=11<br/><br/><br/><br/><em>By: <strong>Liam Hayman</strong></em><br/><br/><strong>About the Author:</strong>
<div style="border: thin solid gray; background-color: #E2E089; padding:1em;">
<p>Name: Liam<br />
Age: 15<br />
I run a general chat forum focused mainly on metal music called <a href="http://www.morbidskies.com" target="_blank">www.morbidskies.com</a> <br />
 The biggest feature of my site is my exlcusive interviews with big name bands such as Tyr, Valient Thorr and Alestorm.</p>
</div>
<p><br/><br/></div>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/photoshop-tutorial-pen-tooling/">Photoshop Tutorial &#8211; Pen Tooling</a> was first posted on December 17, 2009 at 5:10 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/photoshop-tutorial-pen-tooling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Making The Most Out Of A Photo Shop Video Tutorial &#8211; What Can It Offer?</title>
		<link>http://www.dashboarddev.com/making-the-most-out-of-a-photo-shop-video-tutorial-what-can-it-offer/</link>
		<comments>http://www.dashboarddev.com/making-the-most-out-of-a-photo-shop-video-tutorial-what-can-it-offer/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 13:03:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP Tutorials]]></category>
		<category><![CDATA[Common Tools]]></category>
		<category><![CDATA[Instructional Resources]]></category>
		<category><![CDATA[Photo People]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/making-the-most-out-of-a-photo-shop-video-tutorial-what-can-it-offer/</guid>
		<description><![CDATA[
In today&#8217;s world of computers, it would seem so impossible if you have not even heard of Adobe Photo Shop. It hails among the most important programs of today, being the leading photo-processing and graphics software in the market. Learning how to use this program is already a prerequisite for anyone who wants to venture [...]]]></description>
			<content:encoded><![CDATA[<div style="float:left; padding: 12px"><a href="/wp-content/uploads/2009/09/php_tutorial16.jpg"><img src="/wp-content/uploads/2009/09/php_tutorial16.jpg" title='' alt='' /></a></div>
<div>In today&#8217;s world of computers, it would seem so impossible if you have not even heard of Adobe Photo Shop. It hails among the most important programs of today, being the leading photo-processing and graphics software in the market. Learning how to use this program is already a prerequisite for anyone who wants to venture into digital visual arts. It is therefore not surprising why there are tons of photo shop tutorials out there. People really want to learn how to use the program. But among tutorials, the best type for learning is probably the photo shop video tutorial.<br/><br/>In all fairness to other types of photo shop tutorials, normal photo shop instructional resources are indeed very useful. They teach people a wide range ways to use photo shop to their advantage. However, most of these usual tutorial versions can be hard to follow since they only tell people what to do, but not necessarily show them how to do it. When such is the case, it would really be helpful to see what is being taught. This is normally something that people taking photo shop classes can enjoy, but now even people at home can learn photo shop and see how it is down with the help of a photo shop video tutorial.<br/><br/>What a Photo Shop Video Tutorial Can Teach You<br/><br/>There are many specific types of photo shop video tutorials available, some very specialized while others very simple. However, they have a common goal of making you understand the capabilities of photo shop better and make use of them for your own projects. Some photo shop video tutorials teach basic stuff about the program. This type of tutorial instructs users in making themselves familiar with software &#8211; its regular menus, common tools and basic functionalities.<br/><br/>There are also photo shop video tutorials that teach more specific functions of the program. Some specifically teach the color enhancing and manipulation capabilities of photo shop that help adjust the tints or hues of photos. There are also photo shop video tutorials that teach users how to scan pictures for optimum quality. While other tutorials instruct the various ways of editing pictures to make them even more interesting than they already are. These tutorials are very useful for photographers, both digital and film users.<br/><br/>Other photo shop video tutorials teach more advanced functionalities of the program. There are tutorials that teach how to make effects out text, making them even more interesting and very catchy. Others show how to make special effects out of images to make them even more appealing, exciting, or fascinating to viewers. There are some that how to come up with textures that make pictures pop out into real life. These tutorials are very useful for the more advanced graphics designers and visual artists.<br/><br/>Where to Look for Photo Shop Video Tutorials<br/><br/>There are many places to look for photo shop video tutorials. Most software stores have them on stock together with video tutorials for other software. Tutorials can also be found online through various instructional websites sites that offer those who want to learn how to use the program. The good thing about them is that they can easily be reached via the Internet and some of them are even for free.<br/><br/>Here are some websites that offer photo shop video tutorials:<br/><br/>http://video-tutes.com/packages/PSDesign1.php<br/><br/>http://www.photoshopsupport.com/tutorials.html<br/><br/>http://www.tutorialized.com/tutorials/Photoshop/1<br/><br/>http://www.photoshop-tutorials-4-you.com/<br/><br/>Learning photo shop is now very easy thanks to video tutorials.<br/><br/><br/><br/><em>By: <strong>Mario Churchill</strong></em><br/><br/><strong>About the Author:</strong>
<div style="border: thin solid gray; background-color: #E2E089; padding:1em;">
Mario Churchill is a freelance author and has written over 200 articles on various subjects.  For a <a href="http://www.prophotosecrets.com">free photo shop tutorial</a> and or to purchase a video <a href="http://www.prophotosecrets.com">photo shop tutorial</a> checkout his website.
</div>
<p><br/><br/></div>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/making-the-most-out-of-a-photo-shop-video-tutorial-what-can-it-offer/">Making The Most Out Of A Photo Shop Video Tutorial &#8211; What Can It Offer?</a> was first posted on December 16, 2009 at 8:03 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/making-the-most-out-of-a-photo-shop-video-tutorial-what-can-it-offer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>More on SQL and MySQL</title>
		<link>http://www.dashboarddev.com/more-on-sql-and-mysql/</link>
		<comments>http://www.dashboarddev.com/more-on-sql-and-mysql/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 08:08:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP Tutorials]]></category>
		<category><![CDATA[Miscellaneous Tools]]></category>
		<category><![CDATA[Mysql Php]]></category>
		<category><![CDATA[Primary Keys]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/more-on-sql-and-mysql/</guid>
		<description><![CDATA[
PHP &#8211; In this section we discuss miscellaneous tools and techniques for using SQL and MySQL. We introduce:Choosing keys and indexes for fast searchingElementary database-tuning techniquesAdding and deleting users of a DBMS, and changing user permissionsLimitations of MySQL3.10.1 Keys, Primary Keys, and IndexesAs discussed earlier in our introduction to SQL, each table should have a [...]]]></description>
			<content:encoded><![CDATA[<div style="float:left; padding: 12px"><a href="/wp-content/uploads/2009/09/php_tutorial44.jpg"><img src="/wp-content/uploads/2009/09/php_tutorial44.jpg" title='' alt='' /></a></div>
<div>PHP &#8211; In this section we discuss miscellaneous tools and techniques for using SQL and MySQL. We introduce:<br/><br/>Choosing keys and indexes for fast searching<br/><br/>Elementary database-tuning techniques<br/><br/>Adding and deleting users of a DBMS, and changing user permissions<br/><br/>Limitations of MySQL<br/><br/>3.10.1 Keys, Primary Keys, and Indexes<br/><br/>As discussed earlier in our introduction to SQL, each table should have a PRIMARY KEY definition as part of the CREATE TABLE statement. A primary key is an attribute—or set of attributes—that uniquely identifies a row in a table. Storing two rows with the same primary key isn&#8217;t permitted and, indeed, an attempt to INSERT duplicate primary keys produces an error.<br/><br/>In MySQL, the attribute values of the primary key are stored in an index to allow fast access to a row. The default MySQL index type is fast for queries that find a specific row, a range of rows, for joins between tables, grouping data, ordering data, and finding minimum and maximum values. Indexes don&#8217;t provide any speed improvement for retrieving all the rows in a table or for other query types.<br/><br/>Indexes are also useful for fast access to rows by values other than those that are associated with attributes in the primary key. For example, in the customer table, you might define an index by adding the clause:<br/><br/>KEY namecity (surname,firstname,city)<br/><br/>to the CREATE TABLE statement. After you define this index, some queries that select a particular customer through a WHERE clause can use it. Consider an example:<br/><br/>SELECT * FROM customer<br/><br/>WHERE surname = &#8216;Marzalla&#8217; AND<br/><br/>firstname = &#8216;Dimitria&#8217; AND<br/><br/>city = &#8216;St Albans&#8217;;<br/><br/>This query can use the new index to locate—in at most a few disk accesses—the row that matches the search criteria. Without the index, the DBMS must scan all the rows in the customer table and compare each row to the WHERE clause. This might be quite slow and certainly requires significantly more disk accesses than the index-based approach (assuming the table has more than a few rows).<br/><br/>A particular feature of DBMSs is that they develop a query evaluation strategy and optimize it without any interaction from the user or programmer. If an index is available, and it makes sense to use it in the context of a query, the DBMS does this automatically. All you need to do is identify which queries are common, and make an index available for those common queries by adding the KEY clause to the CREATE TABLE statement or using ALTER TABLE on an existing table.<br/><br/>Careful index design is important. The namecity index we have defined can also speed queries other than those that supply a complete surname, firstname, and city. For example, consider a query:<br/><br/>SELECT * FROM customer<br/><br/>WHERE surname = &#8216;LaTrobe&#8217; AND<br/><br/>firstname = &#8216;Anthony&#8217;;<br/><br/>This query can also use the index namecity, because the index permits access to rows in sorted order first by surname, then firstname, and then city. With this sorting, all &#8220;LaTrobe, Anthony&#8221; index entries are clustered together in the index. Indeed, the index can also be used for the query:<br/><br/>SELECT * FROM customer<br/><br/>WHERE surname LIKE &#8216;Mar%&#8217;;<br/><br/>Again, all surnames beginning with &#8220;Mar&#8221; are clustered together in the index. However, the index can&#8217;t be used for a query such as:<br/><br/>SELECT * FROM customer<br/><br/>WHERE firstname = &#8216;Dimitria&#8217; AND<br/><br/>city = &#8216;St Albans&#8217;;<br/><br/>The index can&#8217;t be used because the leftmost attribute named in the index, surname, isn&#8217;t part of the WHERE clause. In this case, all rows in the customer table must be scanned and the query is much slower (again assuming there are more than a few rows in the customer table, and assuming there is no other index).<br/><br/>Careful choice of the order of attributes in a KEY clause is important. For an index to be usable in a query, the leftmost attribute must appear in a WHERE clause.<br/><br/>There are other cases in which an index can&#8217;t be used, such as when a query contains an OR that isn&#8217;t on an indexed attribute:<br/><br/>SELECT * FROM customer<br/><br/>WHERE surname = &#8216;Marzalla&#8217; OR<br/><br/>email = &#8216;dimitria@lucaston.com&#8217;;<br/><br/>Again, the customer table must be completely scanned, because the second condition, email=&#8217;dimitria@lucaston.com&#8217;, requires all rows to be retrieved as there is no index available on the attribute email. Also, the case where the ORed attribute isn&#8217;t the leftmost attribute in an index requires a complete scan of the customer table. The following example requires a complete scan:<br/><br/>SELECT * FROM customer<br/><br/>WHERE firstname = &#8216;Dimitria&#8217; OR<br/><br/>surname = &#8216;Marzalla&#8217;;<br/><br/>If all the attributes in the index are used in all the queries, to optimize index size, the leftmost attribute in the KEY clause should be the attribute with the highest number of duplicate entries.<br/><br/>Because indexes speed up queries, why not create indexes on all the attributes you can possibly search on? The answer is that while indexes are fast for searching, they consume space and require updates each time rows are added or deleted, or key attributes are changed. So, if a database is largely static, additional indexes have low overheads, but if a database changes frequently, each additional index slows the update process significantly. In either case, indexes consume additional space, and unnecessary indexes should be avoided.<br/><br/>One way to reduce the size of an index and speed updates is to create an index on a prefix of an attribute. Our namecity index uses considerable space: for each row in the customer table, an index entry is up to 120 characters in length because it is created from the combined values of the surname, firstname, and city attributes.[2] To reduce space, you can define the index as:<br/><br/>[2] This isn&#8217;t the space actually required by an index entry, because the data is compressed for storage. However, even with compression, the fewer characters indexed, the more compact the representation, the more space saved, and—depending on the usability of the index—the faster searching and updates are.<br/><br/>KEY namecity (surname(10),firstname(3),city(2));<br/><br/>This uses only the first 10 characters of surname, 3 of firstname, and the first 2 characters of city to distinguish index entries. This is quite reasonable, because 10 characters from a surname distinguishes between most surnames, and the addition of a few characters from a first name and the prefix of their city should be sufficient to uniquely identify almost all customers. Having a smaller index with less information can also mean that queries are actually faster, because more index information can be retrieved from disk per second, and disk retrieval speed is almost always the bottleneck in query performance.<br/><br/>The space saving is significant with a reduced index. A new index entry requires only 15 characters, a saving of up to 105 characters, so index insertions, deletions, and modifications are now likely to be much faster. Note that for TEXT and BLOB attribute types, a prefix must be taken when indexing, because indexing the entire attribute is impractical and isn&#8217;t permitted by the MySQL DBMS.<br/><br/>3.10.2 Tuning the Database System<br/><br/>Careful index design is one technique that improves the speed of a DBMS and can reduce the resource requirements of a database. However, comprehensive database tuning is a complex topic that fills many books. We include in this section only a few additional practical ideas to begin to improve the performance of a database system.<br/><br/>As discussed previously, accessing a hard disk is slow and is usually the bottleneck in DBMS performance. More specifically, disk seeking—moving the disk head to get information from another location of the disk—is the slowest component of disk access. Therefore, most techniques described in this section are also techniques that improve performance by minimizing disk space requirements.[3]<br/><br/>[3] Reducing disk space requirements improves both disk seek and read performance. Disk read performance is improved because less data is required to be transferred, while seek performance is improved because the disk head has to move less on average when randomly accessing a smaller file than when accessing a larger file.<br/><br/>Here are some ways to improve DBMS performance:<br/><br/>Carefully choose attribute types and lengths. Where possible, use small variants such as SMALLINT or MEDIUMINT rather than the regular choice INT. When using fixed-length attributes, such as CHAR, specify a length that is as short as practical.<br/><br/>Use fixed-length attributes; that is, try to avoid types such as VARCHAR or BLOB. While fixed-length text attributes may waste space, scanning fixed-length rows in a query is much faster than scanning variable-length rows.<br/><br/>Design indexes with care. As discussed in the last section, keep the primary key index as small as possible, create only indexes that are needed, and use prefixes of attributes where possible. Ensure that the leftmost attribute in the index is the most frequently used in queries and, if all attributes are used, make sure the leftmost attribute is the one with the highest number of duplicate entries.<br/><br/>Create a statistics table if aggregate functions such as COUNT( ) or SUM( ) are frequently used in queries on large tables. A statistics table stores only one row that is manually updated with the aggregate values of another table. For example, if the statistics table maintains the count of rows in a large customer table, each time a row is inserted or deleted in the customer table, the count is updated in the statistics table. For large tables, this is often faster than calculating aggregate functions with the slow built-in functions that require complete processing of all rows.<br/><br/>If large numbers of rows are deleted from a table, or a table containing variable-length attributes is frequently modified, disk space may be wasted. MySQL doesn&#8217;t usually remove deleted or modified data; it only marks the location as being no longer in use. Wasted space can affect access speed.<br/><br/>To reorganize a table—by copying data to a temporary location and back again—MySQL provides the OPTIMIZE TABLE command, which should be used periodically. For example:<br/><br/>OPTIMIZE TABLE customer;<br/><br/>The OPTIMIZE command should be run when the DBMS is offline for scheduled maintenance. The command is nonstandard SQL.<br/><br/>It is possible to create different table types for specific tasks. The default in MySQL is the MyISAM type, and all the tables described so far are this table type. For small, temporary, frequently used lookup tables, a different type, the heap table type, can be used. There are other types, and we briefly discuss alternatives in Chapter 6. More details are provided in Section 9.4 of the MySQL user manual.<br/><br/>Section 10.7 of the MySQL manual includes other excellent ideas for simple performance improvement.<br/><br/>Another aspect of database tuning is optimizing the performance of the DBMS itself. Included with the MySQL installation is the mysqladmin tool for database administration. Details of the system setup can be found by running the following command from a Linux shell:<br/><br/>% mysqladmin -ppassword variables<br/><br/>This shows, in part, the following selected system parameters:<br/><br/>join_buffer current value: 131072<br/><br/>key_buffer current value: 8388600<br/><br/>net_buffer_length current value: 16384<br/><br/>record_buffer current value: 131072<br/><br/>sort_buffer current value: 2097144<br/><br/>table_cache current value: 64<br/><br/>The important parameters are those that impact disk use. MySQL has several main-memory buffer parameters that control how much data is kept in memory for processing. These include:<br/><br/>The record_buffer for scanning all rows in a table<br/><br/>The sort_buffer for ORDER BY and GROUP BY operations<br/><br/>The key_buffer for storing indexes in main memory<br/><br/>The join_buffer for joins that don&#8217;t use indexes<br/><br/>In general, the larger these buffers, the more data from disk is cached or stored in memory and the fewer disk accesses are required. However, if the sum of these parameters is near to exceeding the size of the memory installed in the server, the underlying operating system will start to swap data between disk and memory, and the DBMS will be slow. In any case, careful experimentation based on the application is likely to improve DBMS performance.<br/><br/>Section 10.2.3 of the MySQL manual suggests parameter settings when starting the MySQL server. First, for machines with at least 64 MB of memory, large tables in the DBMS, and a moderate number of users, use:<br/><br/>safe_mysqld -O key_buffer=16M -O table_cache=128 \<br/><br/>-O sort_buffer=4M -O record_buffer=1M &amp;<br/><br/>Second, if there is less than 64 MB of memory available, and there are many users, try the following:<br/><br/>safe_mysqld -O key_buffer=512k -O sort_buffer=100k \<br/><br/>-O record_buffer=100k &amp;<br/><br/>The following setting might be appropriate for the winestore, because many users are expected, the queries are largely index-based, and the database is small:<br/><br/>safe_mysqld -O key_buffer=512k -O sort_buffer=16k \<br/><br/>-O table_cache=32 -O record_buffer=8k<br/><br/>-O net_buffer=1K &amp;<br/><br/>Even more conservative settings might also be acceptable.<br/><br/>There are two other parameters we have not discussed. The table_cache parameter manages the maximum number of open tables per user connection, while the net_buffer parameter sets the minimum size of the network query buffer in which incoming queries are kept before they are executed.<br/><br/>The mysqladmin utility can report the status of the DBMS:<br/><br/>% mysqladmin -ppassword status<br/><br/>The output has the following format:<br/><br/>Uptime: 5721024 Threads: 14 Questions: 7874982<br/><br/>Slow queries: 6 Opens: 115136 Flush tables: 1<br/><br/>Open tables: 62<br/><br/>This gives a brief point-in-time summary of the DBMS status and can help find more about the number of user connections, queries, and table use. Similar output can be generated by running the commands SHOW STATUS and SHOW VARIABLES through the MySQL command interpreter.<br/><br/>Information about query performance can be gained with the benchmark( ) function, which can be used iteratively for tuning when altering table design or DBMS system parameters. The following statement illustrates benchmarking:<br/><br/>SELECT benchmark(10000, COUNT(*))<br/><br/>FROM items;<br/><br/>This statement reports the time taken to evaluate 10,000 calls to COUNT( ) on the items table.<br/><br/>3.10.3 Adding and Deleting Users<br/><br/>We have not yet discussed adding and deleting users from the MySQL DBMS. Our rationale in leaving this topic until this final section is that DBMS users aren&#8217;t as important in a web database application as in other applications. Because access to the database and DBMS is generally controlled in the application logic of the middle tier, usually only one or two DBMS users are needed.<br/><br/>A user, hugh, who has full control over all aspects of the DBMS and can access the DBMS from the machine that hosts the DBMS, can be created with the statement:<br/><br/>GRANT ALL PRIVILEGES ON *.* TO hugh@localhost<br/><br/>IDENTIFIED BY &#8216;password&#8217; WITH GRANT OPTION;<br/><br/>Allowing access over a network can be added with:<br/><br/>GRANT ALL PRIVILEGES ON *.* TO hugh@&#8221;%&#8221;<br/><br/>IDENTIFIED BY &#8216;password&#8217; WITH GRANT OPTION;<br/><br/>There is no need to allow network access for a web database application if the middle-tier components—the web server and scripting engine—are installed on the same machine as the DBMS.<br/><br/>This user can then connect to the database from the shell with the command:<br/><br/>% mysql -ppassword -uhugh<br/><br/>The user information is stored in the mysql database in the user table, which can be explored with:<br/><br/>USE mysql;<br/><br/>SELECT * FROM user;<br/><br/>The mysql database and the user table can be managed in the same way as any other database. For example, you can update the password of the new user with the UPDATE statement:<br/><br/>UPDATE user<br/><br/>SET password=password(&#8216;newpwd&#8217;)<br/><br/>WHERE user=&#8217;hugh&#8217;;<br/><br/>Note the use of the password( ) function we described earlier to encrypt the password for storage in the user table.<br/><br/>3.10.3.1 Permissions<br/><br/>Users can be added to the system with an INSERT INTO the user table in the mysql database or, as previously illustrated, you can use the GRANT statement. Moreover, privileges can be adjusted with an UPDATE, added with GRANT, or removed with REVOKE.<br/><br/>Consider the following example:<br/><br/>GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP<br/><br/>ON winestore.*<br/><br/>TO dave@localhost<br/><br/>IDENTIFIED BY &#8216;password&#8217;;<br/><br/>This adds a new user dave and allows him to use only the SQL statements listed in the winestore database. The parameter winestore.* means all tables within the winestore database.<br/><br/>Privileges can be removed with the REVOKE statement. For example:<br/><br/>REVOKE DROP,CREATE ON winestore.* FROM dave@localhost;<br/><br/>If the privilege or privileges are to be revoked for all databases in the DBMS, not just a single database, winestore.* can be replaced with *.*.<br/><br/>The following privileges can be used in GRANT and REVOKE statements:<br/><br/>ALL PRIVILEGES, FILE, RELOAD, ALTER, INDEX, SELECT,<br/><br/>CREATE, INSERT, SHUTDOWN, DELETE, PROCESS, UPDATE,<br/><br/>DROP, REFERENCES, USAGE<br/><br/>3.10.4 Limitations of MySQL<br/><br/>The most significant limitation of MySQL is that it doesn&#8217;t support nested queries. However, support is planned in MySQL Version 4. Nested queries are those that contain another query. Consider an example nested query to find the wines that have inventory stock:<br/><br/>SELECT DISTINCT wine_id FROM wine<br/><br/>WHERE wine_id IN<br/><br/>(SELECT wine_id from inventory);<br/><br/>The query returns the wine_id values from the wine table that are found in the inventory table. Nested queries use the IN, NOT IN, EXISTS, and NOT EXISTS operators.<br/><br/>In many cases, a nested query can be rewritten as a join query. For example, to find the wines that are in stock, you can use the following join query:<br/><br/>SELECT DISTINCT wine.wine_id FROM wine, inventory<br/><br/>WHERE wine.wine_id = inventory.wine_id;<br/><br/>However, some nested queries can&#8217;t be rewritten as join queries; for difficult queries, temporary tables are often a useful workaround.<br/><br/>A limitation of DELETE and UPDATE is that only one table can be specified in the FROM clause. This problem is particular to MySQL and related to the lack of support for nested queries. This limitation can make modifications of data difficult. For example, it prevents data being deleted or updated using the properties of another table. A solution involves data being copied to a temporary table using a combined INSERT and SELECT statement that joins together data from more than one table. Then, the data can be deleted or updated in the temporary table and then transferred back to the original table. Another approach, using the concat( ) string function, is discussed in Section 1.4.4.1 in the MySQL manual.<br/><br/>To avoid UPDATE and DELETE problems, consider adding additional attributes to tables at design time. For example, in the winestore we added a DATE attribute to the items table so that shopping-cart items can be removed easily if they aren&#8217;t purchased within one day. Removing rows from the items table based on the DATE in the orders table is difficult without support for nested queries.<br/><br/>MySQL doesn&#8217;t support stored procedures or triggers. Stored procedures are queries that are compiled and stored in the DBMS. They are then invoked by the middle-tier application logic, with the benefit that the query is parsed only once and there is less communication overhead between the middle and database tiers. Triggers are similar to stored procedures but are invoked by the DBMS when a condition is met. Stored-procedure support is planned for MySQL, but trigger support isn&#8217;t.<br/><br/>Views aren&#8217;t supported in MySQL. Views consolidate read-only access to several tables based on a join condition. For example, a view might allow a user to browse the sales made up to April without the need to create a temporary table, as we did in the example in Section 3.8. View support is planned for the future.<br/><br/>Limitations that we don&#8217;t discuss here include the lack of support for foreign keys and cursors. More detail on the limitations of MySQL can be found in Section 1.4 of the manual distributed with MySQL.<br/><br/>More PHP Tutorial<br/><br/><br/><br/><em>By: <strong>alimox</strong></em><br/><br/><strong>About the Author:</strong>
<div style="border: thin solid gray; background-color: #E2E089; padding:1em;">
<p><a href="http://php.baggyspace.com/">PHP Tutorial</a></p>
</div>
<p><br/><br/></div>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/more-on-sql-and-mysql/">More on SQL and MySQL</a> was first posted on December 10, 2009 at 3:08 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/more-on-sql-and-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Popular Programming degree options for all</title>
		<link>http://www.dashboarddev.com/popular-programming-degree-options-for-all/</link>
		<comments>http://www.dashboarddev.com/popular-programming-degree-options-for-all/#comments</comments>
		<pubDate>Thu, 03 Dec 2009 07:28:58 +0000</pubDate>
		<dc:creator>Writingstar4u</dc:creator>
				<category><![CDATA[Programming Degrees]]></category>
		<category><![CDATA[Associate Degree]]></category>
		<category><![CDATA[Computer Programming`]]></category>
		<category><![CDATA[Graphics and Computer Forensics]]></category>
		<category><![CDATA[•	Bachelor’s degree in Computer]]></category>

		<guid isPermaLink="false">http://www.dashboarddev.com/?p=120</guid>
		<description><![CDATA[In today’s world, it is important to choose a right career path to live a comfortable life, and there is nothing better than starting off as a programmer. The great thing is that there are several different Programming degrees available in the US some of which are instructor led whereas others are online. These will [...]]]></description>
			<content:encoded><![CDATA[<p>In today’s world, it is important to choose a right career path to live a comfortable life, and there is nothing better than starting off as a programmer. The great thing is that there are several different Programming degrees available in the US some of which are instructor led whereas others are online. These will open up a diverse and interesting career path for one. These Programming degrees give students a chance to pursue careers in writing programs for different industries and include analysis, design and testing of software.</p>
<p>If you are new to this world of programming, following are the most important and popular programming degrees that you should pay attention to.</p>
<ul>
<li>Associate Degree in Computer Programming</li>
</ul>
<p>This is the kind of program that will help you to test the waters in this field and enable you to procure the knowledge required to get an entry level position. This degree will let your foot in the door so to say. It will allow you to garner the requisite knowledge in a short time and will be the first step towards catapulting you into the arena of programming. The next stage after this will be the Bachelor’s Degree.</p>
<ul>
<li>Bachelor’s degree in Computer Programming or      the Bachelor of Science:</li>
</ul>
<p>This degree will enable you to major in Computer Programming and help you carve a niche for yourself in the computer related jobs field. This is the degree that will help you learn all about analysis, design, testing and implementation of the skills learned. This is of course beyond the basic programming skills.</p>
<ul>
<li>Masters or a Post Graduate degree to major in      one of the fields such as Software Engineering, Information Technology,      computer engineer and unique and interesting options like Computer      Graphics and Computer Forensics.</li>
</ul>
<p>These programs can be found at most community colleges, technology career schools and online schools. There are a growing number of online learning options</p>
<p>Diploma programs typically last from 13 to 60 weeks where as degree programs in Programming will take you 80 to 90 weeks to complete. For instance if you were to opt for a Computer Programming Degree from the Lane Community College it will cost you $8,220 per year for a two years program. The mode of study is full time and the entry requirements are having passed high school and an acceptable TOEFL score. The other colleges offering this degree are Wood Tobe Coburn, Vatterott, Thompson Institue Philadelphia,, Technology Education College of Columbus, Pittsburgh technical Institute in Pittsburgh.</p>
<p>These courses are in great demand for obvious reasons. So, take some time, do your research and find the right programming degree for yourself.</p>
<hr style="border-top:black solid 1px" /><a href="http://www.dashboarddev.com/popular-programming-degree-options-for-all/">Popular Programming degree options for all</a> was first posted on December 3, 2009 at 2:28 am.<br />&copy;2009 &quot;<a href="http://www.dashboarddev.com">Dashboard Developers</a>&quot;. Use of this feed is for personal non-commercial use only. If you are not reading this article in your feed reader, then the site is guilty of copyright infringement. Please contact me at peterd@premiumtextlinks.com<br /><br /><span style="font-size: 0.8em">Feed enhanced by the <a href="http://ajaydsouza.com/wordpress/plugins/add-to-feed/">Add To Feed Plugin</a> by <a href="http://ajaydsouza.com/">Ajay D'Souza</a></span><br />]]></content:encoded>
			<wfw:commentRss>http://www.dashboarddev.com/popular-programming-degree-options-for-all/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
