php best tutorial-php variables

PHP automatically creates variables for all the data it receives in an HTTP request. This can include GET data, POST data, cookie data, and environment variables. The variables are either in PHP's global symbol table or in one of a number of superglobal arrays, depending on the value of the register_globals setting in your php.ini file. 
 
 
$_GET
GET-method variables. These are the variables supplied directly in the URL. For example, with http://www.test.com/page.php?a=21&b=22, $_GET['a'] and $_GET['b'] are set to 21 and 22, respectively.
$_POST
POST-method variables. Form field data from regular POST-method forms.
$_COOKIE
Any cookies the browser sends end up in this array. The name of the cookie is the key and the cookie value becomes the array value.
$_REQUEST
This array contains all of these variables (i.e., GET, POST, and cookie). If a variable appears in multiple sources, the order in which they are imported into $_REQUEST is given by the setting of the variables_order php.ini directive. The default is 'GPC', which means GET-method variables are imported first, then POST-method variables (overriding any GET-method variables of the same name), and finally cookie variables (overriding the other two).
$_SERVER
These are variables set by your web server. Traditionally things like DOCUMENT_ROOT, REMOTE_ADDR, REMOTE_PORT, SERVER_NAME, SERVER_PORT, and many others. To get a full list, have a look at your phpinfo( ) output, or run a script like the following to have a look:
<?php
  foreach($_SERVER as $key=>$val) {
    echo '$_SERVER['.$key."] = $val<br>\n";
  }
?>
$_ENV
Any environment variables that were set when you started your web server are available in this array.

Web-Based MySQL Administration

Web-Based MySQL Administration

At http://phpwizard.net/phpMyAdmin you will find a PHP Web application that can help you manage MySQL. It enables you to manage a MySQL database using a browser and makes administrative work much simpler.

BlueSQLFree web based Database management. 



After you have installed PHP and MySQL, you are ready to install phpMyAdmin. The work done while preparing for IMP has also prepared the system for phpMyAdmin. You do have to edit one of the . php3 files in phpMyAdmin to enter the MySQL database name and password.
With phpMyAdmin, you can create and drop databases and tables. You can also add and remove fields and perform other administrative chores.

Navicatanother option,
I have found phpMyAdmin to be very useful when trying to create or delete tables. After you have filled out a form that describes the table, it generates the SQL for you. You can use this information to create script files for later use.
For now, phpMyAdmin has some bugs. I have had it crash on me several times. However, its usefulness is good enough for me to ignore the occasional crash.
From a security point of view, phpMyAdmin is terrible. After it is installed, everyone who uses that Web page has unrestricted access to the MySQL database. I strongly recommend that you do not put your server on the Internet with phpMyAdmin active. If you do, you must configure your Web server to serve only the phpMyAdmin Web pages to your local network. You should also protect the Web pages with a password. Be careful!

Adminer

Open Source db manage tool.

HeidiSQL

Open Source 
HeidiSQL is a  Windows based interface for MySQL databases

make website search engine friendly

Website Submission the most important  process of web promotion of any website.


Facebook, Twitter, Pinterest, YouTube, and Google+,facebook page creation,dmoz listing-
This is increase traffic and  visitors to the targeted key place.


Add  Content to article Network.

Make  provide quality content to  improve your rankings.

Make a beautiful website and friendly interface.

Add small images for less loading time.

Add sitemap for the website.

Additional SEO tips-increase traffic,ranking

quality content
Search engines see quality contentand love it.

Keyword research
Keyword research helps you strategically create your site fast listing.
keyword research can help you tremendously.You are a messenger for the
search engines, and therefore, keyword research tools,directory listings,
traffic analysis software that is  price the core range of the small/big business.

Add  an alt tag on every image.

Make LinkedIn profiles -That can be optimized the search.
Make Facebook Pages -That can be optimized for search.
Google+ It helps for getting  visitors.



Article exchanges-
You publish  article on  many site. your article on the top
ten website, with a link back to your site.

Make Each page has a good  meta tag.


Find relevant text & links which Helps engines to indexing.

GET Linls and visitors
Review Posting
Blog commenting
Social Bookmarking Submission
Article directories
Video Submission
Forum posting
Rss Feed Submission
Article submission sites list
Fast Load time
internet users  feel frustrated as they wait for page to load.
Add smaller images for fast load.

built  a powerful Networks
connect with many ppl,website,add Twitter as Twitter tool.

Twitter tools-seo techniques

Twitter tools is very nice seo techniques today.
It  help you find more followers, manage private messages, sends alerts,sharing photos

Twitter Search 
http://search.twitter.com
Twitter search engine 

TweetGrid
http://tweetgrid.com/
Twitter search dashboard

Hashtags
http://hashtags.org/
Directory of hash tags on Twitter

GroupTweet
http://grouptweet.com
Send private messages to a group

TweetBeep
http://tweetbeep.com
This site sends alerts when people are tweeting about you .

TweetDeck
http://tweetdeck.com/beta
 This app allows integrated Twitter and Facebook activities

TweetMeme
http://tweetmeme.com
Tool that tracks most popular links on Twitter

Twellow
http://www.twellow.com
Twitter directory, search etc

Twitpic
http://twitpic.com
This is  for sharing photos on Twitter

MySQL Server Performance

To make things  easier for administrators.
  • Minimal memory, relatively infrequent MySQL usage: my-small.cnf
  • Minimal memory combined with reliance on MySQL, or larger memory for a multipurpose system: my-medium.cnf
  • Large memory server dedicated primarily to MySQL: my-large.cnf
  • Very large memory server completely dedicated to MySQL: my-huge.cnf
It's worth your time to review these files, if for no other reason than to gain some ideas on the optimal ratios between the various server settings.

  • Connectivity
  • Memory management
  • Application control
  • User resource control

PHP variable-related functions

  • Cast a value from one type to other type:- doubleval(), intval(), strval()
  • Set  type of a variable:- settype()
  • Verify  the type of a variable:- is_array(), is_bool(), is_double(), is_float(), is_int(), is_integer(), is_long(), is_null(), is_numeric(), is_object(), is_real(),  is_scalar(), is_string(),gettype()
  • Destroy variables:- unset()
  • Get info of variables:- empty(), get_defined_vars(), isset(), print_r(), var_dump()

TCP/IP Firewall

The combined set of protocols is called the Transmission Control Protocol and Internet Protocol TCP/IPprotocol suite.

As a network administrator, it is important that you understand the nature of potential attacks on computer security. We'll briefly describe the most important types of attacks so that you can better understand precisely what the Linux IP firewall will protect you against. You should do some additional reading to ensure that you are able to protect your network against other types of attacks. Here are some of the more important methods of attack and ways of protecting yourself against them:

Unauthorized access
This simply means that people who shouldn't be allowed to use your computer services are able to connect to and use them. For example, people outside your company might try to connect to your company accounting host or to your NFS server.
There are various ways to avoid this attack by carefully specifying who can gain access through these services. You can prevent network access to all except the intended users.


A malicious person who gains access to a computer system may guess system passwords or exploit the bugs and idiosyncratic behavior of certain programs to obtain a working account on that host.

Network Security Configuration

Installed your Linux system, you should keep some basic security measures to protect your system
    Firewalls, intrusion protection, encryption, data integrity, and authentication are ways of protecting against such attacks.
    • A firewall prevents any direct unauthorized attempts at access.
    • Intrusion detection checks the state of your system files to see if they have been tampered with by someone who has broken in.
    • Encryption protects transmissions by authorized remote users, providing privacy.
    • Integrity checks such as modification digests guarantee that messages and data have not been intercepted and changed or substituted en route.
    • Authentication methods such as digital signatures can verify that the user claiming to send a message or access your system is actually that person.


      system is also a gateway for a private network, the system's firewall capability can effectively protect the network from outside attacks.

      Linux security- the ones with which every user has experience are passwords and file permissions.

    Linux Software websites

     Linux Software websites
    Internet Sites
    Description
    Red Hat distribution RPM packages
    RPM package repository
    Source Forge open source software repository and development site
    New Linux software
    KDE software applications
    GNOME software applications

    Advanced Database Techniques

    PEAR DB is the database primitives shown earlier; it provides several shortcut functions for fetching result rows, as well as a unique row ID system and separate prepare/execute steps that can improve the performance of repeated queries.

    $result_set = $db->query(SQL, values);
     
     Pass the query( ) function SQL with 
     in place of specific values, and add a second parameter consisting of 
    the array of values to insert into the SQL 
    
    
    When issuing the same query repeatedly, it can be more efficient to compile the query once and then execute it multiple times, using the prepare( ) , execute( ), and executeMultiple( ) methods.

    $com = $db->prepare(SQL);

    This returns a com query object. The execute( ) method fills in any placeholders in the query.

    PEAR DB gives a lot of methods that perform a query and fetch the results in one step:  
    getOne( ) , getRow( ), getCol( ), getAssoc( ), and getAll( ). 

    $value-set = $db->getOne(SQL [, values ]);

    php-static variables

    A static variable retains its value between calls to a function but is visible only within that function.
    IT declare a variable static with the static keyword.

    function test_counter (  ) {
      static $counter = 0;
      $counter++;
      echo "Static counter is now $counter\n";
    }
    $counter = 5;
    test_counter(  );
    test_counter(  );
    echo "Global counter is $counter\n";
    Static counter is now 1
    Static counter is now 2
    Global counter is 5
     
    Variables declared outside a function are global.
     That is, they can be accessed from any part of the script. By default, 
    they are not available inside functions.

    trade people use Google

    Google is popular anywhere
    Google's free online language translation service provides a knowledgeable support staff.
    you can share a lot of  things With Google+ like  events,games, photos.
    ITs  Find all businesses,online classifieds,advertising classifieds.Google takes a 67%
    share of the U.S. search market.

    Job growth is increased by this google even search job,employment,business grows with the
    help of google.

    Google’s Picasa Web Albums to store photos,and manage the photos very nice.
    With these tools, you can create different versions of your profile .

    Google Docs  store many things like  the latest doc,text files, more updates new files.


    Gmail: Email from Google

    Google Groups

     Google+

    Google Translate

     Google News

    Google Toolbar

     Google Docs

    Google Finance

    Picasa

    Google - YouTube

     Google Checkout

    Google Sites

    Android Apps on Google

     

    • Google Documents:- Share and add,edit documents , see them on the run with Google Docs mobile service, and take Google Notebook for web research.
    • Google Spreadsheets:- Add live data to spreadsheets, and  charts and tables you can embed in web pages.
    • Google Presentations:- See them on a mobile phone and save them as video.
    • Gmail:- Send email to and from a mobile phone, adjust Gmail's layout with a style sheet, and a lot more
    • iGoogle:- Create your own gadgets, program a screenscraper, add Flash games, and more.
    • Google Calendar:- Add web content events, public calendars, and your Outlook Calendar to this application.
    • Google Reader, Google Maps, Google Earth, and Google SketchUp:- the new 3D modeling software tool.
    • Picasa, YouTube, and Google Video:-- customize and use these media management apps.

     

     

     


    Php Operators




    PHP Operators

    The following table lists the operators from highest to lowest precedence.


    Operators
    A
    !, ~, ++, --, @
    Right
    *, /, %
    Left
    +, -, .
    Left
    <<, >>
    Left
    <, <=, >=, >
    Nonassociative
    ==, !=, ===, !==
    Nonassociative
    &
    Left
    ^
    Left
    |
    Left
    &&
    Left
    ||
    Left
    ? : (conditional operator)
    Left
    =, +=, -=, *=, /=, %=, ^=, .=, &=, |=, <<=, >>=
    Left
    AND
    Left
    XOR
    Left
    OR
    Left

    Php Networking Functions

    There are many functions in php to convert or look up domain name, IP address,
    protocol, and service information.

    Domain name/IP address lookups and conversions

    • gethostbynamel()
    • gethostbyname()
    • gethostbyaddr()
    • ip2long()
    • long2ip()
     Sockets


    • fsockopen()
    • pfsockopen()
    • socket_get_status()
    • socket_set_blocking()
    • socket_set_timeout()

      DNS resource records

      • checkdnsrr()
      • getmxrr()
       

    php-Error Control Operators

    PHP gives one error control operator: the at sign (@).Any error messages that might be generated by that expression will be ignored.
    If you have set a custom error handler function with set_error_handler() then it will still get called, but this custom error handler can call error_reporting() which will return 0 when the call that triggered the error was preceded by an @. 

    <?php/* Intentional file error */$test_file = @file ('no_existent_file') or
        die (
    "Failed opening file: error was '$php_errormsg'");
    // this works for any expression, not just functions:$val22 = @$cache[$key];// will not issue a notice if the index $key doesn't exist.
    ?> 
     
    or  
    add  error_reporting()  in the script

    how to creating a Web Site

    To create your own Web site, you need access to a Web server. Red Hat automatically installs the Apache Web server on its Linux systems. You can also rent Web page space on a remote server—a service many ISPs provide, some for free. On Red Hat systems, the directory set up by your Apache Web server for your Web site pages is /var/httpd/html. Other servers provide you with a directory for your home page. Place the Web pages you create in that directory. You place your home page here. You can make other subdirectories with their own Web pages to which these can link. Web pages are not difficult to create. Links from one page to another move users through your Web site. You can even create links to Web pages or resources on other sites. Many excellent texts are available on Web page creation and management.

    Web pages are created using either HTML intro, the Hypertext Markup Language, or the newer extended version, XML, the Extended Markup Language. They are a subset of Standard Generalized Markup Language (SGML). Creating an HTML or XML document is a matter of inserting HTML or XML tags in a text file. In this respect, creating a Web page is as simple as using a tag-based word processor. You use the HTML tags to format text for display as a Web page. XML tags can include more detailed information about a particular connection such as object data or transaction characteristics. The Web page itself is a text file you can create using any text editor. If you are familiar with tag-based word processing on Unix systems, you will find it conceptually similar to nroff. Some HTML tags indicate headings, lists, and paragraphs, as well as links to reference Web resources.

    Instead of manually entering HTML or XML code, you can use Web page composers. A Web page composer provides a graphical interface for constructing Web pages. Special Web page creation programs can easily help you create complex Web pages without ever having to type any HTML tags explicitly. Remember, though, no matter what tool you use to create your Web page, the Web page itself will be an HTML document.

    top search-engines list

    Google search
     930,000,000 -  Unique Monthly Visitors


     ask
     125,000,000 -  Unique Monthly Visitors

    Aol Search
    36,000,000 -  Unique Monthly Visitors


    bing
     164,000,000 -  Unique Monthly Visitors

     Yahoo! Search
     166,000,000 -  Unique Monthly Visitors |


     MyWebSearch
    14,000,000 -  Unique Monthly Visitors



    Dogpile
     2,500,000 - Unique Monthly Visitors 


     WebCrawler
     2,600,000 -  Unique Monthly Visitors



     blekko
     9,500,000 -Unique Monthly Visitors

    Lycos
    4,800,000 - Unique Monthly Visitors |

     

     Info
    2,900,000 - Unique Monthly Visitors




     GoodSearch
    1,800,000 -  Unique Monthly Visitors


    Infospace
     2,700,000 -  Unique Monthly Visitors



     Excite
     1,90,000 -  Unique Monthly Visitors

    Static URLs and Dynamic URLs

    The search engines treat static URLs differently than dynamic  URLs.


    Static URLs 
    Static URLs means  not add a query string.
    By this definition, a URL referencing a PHP script without
    parameters is still static.
     examples of static URLs :
    http://example.com/index.html
    http://www.example.com/site-map.php

    Dynamic URLs
    Dynamic URLs are  that add a query string, add  by ?.
     This string is used to pass various parameters to a script.

    http://example.com/product.php?item_id=4&pic_id=2

    Static URLs can be converted to DynamicURLs with the .htaccess

    Cracker Seo Tips

    b tags
    Add the <b>  tags of few of  keyword  phrases  on each page.
    Search engines see content in <b> tag of the  pages that instances of a
    term or phrase on rankings.


    Heading tag
    One of the great Weapons the engines use in rankings is Heading tag.
    Add H1 tag  on every page.

    Title tags
    Add keywords in titles, text, and meta data
    As title tags are such an important tip of search engine
    optimization.It will be for high ranking.


    Social Media connections
    Add all Social networking sites it help  your web site optimization
    and increase your website linkability .tell your audience  about the site info.


    Link building
    Link building of the website is  very important that links coming in to as many sites.
    if you do link outside then make sure there is few logical reason for redirect  visitors in that site.


    Newsletters
    You can connect with  customers and grow the businesses by sending newsletters with many news,info
    picture.It will help you get  traffic to  your website.

    Alt tag
    The search engine spiders  find what your  image is about is by adding an Alt tag.
    Alt tag is a string  that place texts to allow the search engine spiders to properly
    index your page images.



    Image name
     give a descriptive image name for your image of the website.IT will also help for
    your search engine rankings.


    SEO-friendly URL
     Add the main keyword in your URL,
    for example http://example.com/seo-optimization-tips.
    IT is uickly rankings those pages.


    Google Analytics
    Setup Google Analytics To find out how many visitors your site gets,
    and what pages they visit,exactly what keywords your visitors searched for.


    Also  See  Advanced SEO tips 2013

    Yahoo-Search Marketing

    Yahoo are the dashboard tab, a campaigns tab, a reports tab, and an administration tab. In addition,
    there are links on the pages that will take you to additional features and capabilities.

    http://advertisingcentral.yahoo.com/searchmarketing/en_SG/index
                              AND
    http://smallbusiness.yahoo.com/marketing/


    Yahoo Search Marketing is a PPC program that’s similar to AdWords, but there’s one big difference. Yahoo is a very commercial search engine, which means that many of the search results are
    paid placement ads or are web sites that have been added by the web-site owner. Editors usually
    review and approve submitted listings before they are shown in search results.

    Yahoo is also a portal that contains many different services, such as instant messaging, e-mail, maps,
    and much more Google is structured in a similar manner. Being a portal means that Yahoo has
    many loyal users who are likely to see your ads once you begin a PPC campaign with Yahoo Search
    Marketing.
    When you sign up with Yahoo! Search Marketing, you have two options for the type of account you’d
    like to have. These options are different from Google, because you can have a free PPC plan that you
    use, create, and maintain on your own, or you can choose to have a Yahoo! specialist help you create
    your campaign.

    Yahoo’s summary report

     Ad Performance
    Daily Performance
    Keyword Performance
    Performance by Geographical Location
    Daily Spend Performance
    URL Performance
    Monthly Financial Reports
    Billing Transaction Detail

    IT is  need to maintain your SEO efforts, including PPC advertising.

    Alternatives way to PayPal


    Google Checkout     http://checkout.google.com/
    Money Bookers        http://www.moneybookers.com/
     Paymate                   http://www.paymate.com
    Digital River               http://www.digitalriver.com
    Kagi                           http://www.kagi.com/



    Other  Alternatives are:


     

     

    Web analytics provider- Reach Customers

    Google Analytics          www.google.com/analytics               Free
    Yahoo! WebAnalytics      www.web.analytics.yahoo.com     Free
    Woopra                            www.woopra.com                      Free and paid  plans
    CrazyEgg                           http://crazyegg.com                    Prices start at$9/month
    Enquisite                          www.enquisite.com                     $49.95/month forthe Pro package


    Yahoo! Web Analytics: The Yahoo! folks are no slouches when it comes
    to the free analytic tools they offer. Like GA, Yahoo! Web Analytics can
    give you valuable insights in to the demographics and the interest level
    of your Web site visitors. It also gives you powerful and flexible dashboards
    (a jargon-y way of saying control panels), market segmentation
    tools, and campaign management features. And, like GA, it’s very easy to
    implement.

     Woopra: Yes, it does kind of sound like a certain daytime talk show
    host, but actually, it’s a great alternative to GA. Of course, it hasn’t yet
    captured the sort of market share that GA enjoys, but that’s because
    it’s a relative newcomer to the field. Woopra is particularly useful for
    less-trafficked Web sites and blogs because in addition to offering all the
    standard metrics that GA does, it also has two really nifty features


    CrazyEgg: GA offers an overlay tool, and CrazyEgg offers a more
    advanced version of the same thing. An overlay tool gives you the ability
    to literally see where people are clicking on a Web page


    Checking your referring keyword data lets
    you infer the intent of your site visitors, understand how they typically
    search for the kind of products or services you offer.

    phone services-Marketing Services

    A conversation remains the best way to build
    rapport with customers. They not only get information, but they also get a
    sense of your winning personality and what you’d be like to work with. You
    get a sharper sense of what your customers are interested in and what their
    common questions and concerns are.

    Most  phone services offer other features as well. Probably the most
    popular of these are call logs that give you a complete record of who called,
    who they asked for, the number they used, the date and time the call was
    made, the call’s duration and even, in some cases, what the result of the
    transaction was.

    Anyone called for a free quote but didn’t leave a message, you have her
    number, and you can call her right back.

    top 10 E-Commerce SEO tips

    1.Site template friendly design.
    2.Landing page optimization - less time to load
    3.Add of best keywords.
    4.Link appears as many times as needed.
    5.Reciprocal Links and Link Popularity is your key to high search engine ranking.
    6.Keyword selection for local search engine optimization.
    7.Title Tags and Meta Tags- search engines see about the page.
    8.Include the keywords in the image titles and alt tags.
    9.High quality link building and content.
    10.Make  guest posts, articles, press releases.

    Link metrics

    There are several tools you can use, including your Google and Bing
    Webmaster accounts. While Google and Bing are free and easy to use (assuming
    you've already set up the accounts, as we advised in earlier chapters), there is a much
    better solution: Majestic SEO.

    Majestic SEO provides both a free and a premium subscription service. If you control
    the site you want to track, and have access to the site's root directory on the server,
    then you can use the free service. Once you have registered, and verified your
    ownership of the site, you can use Majestic SEO to produce rich reports on the link
    history of the site. The data is very complete, and allows you to track both internal
    and external links, to view trend over time, and to look at a variety of other metrics.

    Social media's increasing role in search marketing was also highlighted, with a
    recommendation made to not only be proactive about using social media to promote
    your content but also to inspire and motivate your users to promote your content
    through their social networks.

    Links broad categories-make your own links

    1.Organic links: These are links to your site that are voluntarily given by
    others. Organic links are normally a by-product of excellent content that
    people want to share.

    2. Solicited links: Links obtained by reaching out to another site and
    requesting a link. This would include links you purchase, reciprocal links,
    and other similar schemes.

    3. Self-created links: Links that you create by posting content on other sites.
    This category includes article submissions, press releases, forum posts,
    comments, and proactive social sharing.


    Finding quality link partners begins with a search for relevant sites.
    The goal is to identify sites that will return the highest value in exchange for the
    amount of effort you have to invest to obtain the link.


    1.Add allintitle: keyword to find pages where your keywords appear in the
    page title.
    2.Add allinurl: keyword to restrict the search results to only those pages
    where the keywords are part of the URL.
    3. Add allinanchor: keyword to find links where the keywords appear in the
    anchor text for links.
    4. Add allintext: keyword to find pages that have the highest relevance for
    your keywords in the content of the page.

     Make your own links


    # Article exchanges
    # Video sharing sites
    # Document sharing sites
    #Directories
    # Comments
    # Forum posts
    # Content aggregators
    # Submit your site opportunities
    # Press release distribution

    Webmaster Tools-Bing,Google

    Bing Webmaster Tools is essentially, a parallel service to Google Webmaster Tools.
    The service is provided free of charge by Bing and allows you to perform the
    same basic tasks you can find on Google Webmaster Tools.

    To set up Bing Webmaster Tools for your site, simply create an account for the
    domain and then verify your ownership of the site. The system provides several
    alternatives for verifying your ownership of the domain; the easiest is probably to
    upload the XML file that Bing provides during the setup process.

    Add your XML sitemap.
    1. Log in to Bing Webmaster Tools.
    2. Click on the name of your site.
    3. On the page that loads, click on the Crawl tab at the top of the page.
    4. On the Crawl Summary page, click on the Sitemaps (XML, Atom, RSS) link,
    either at the top, under the tabs or in the left hand navigation column.
    5. On the Sitemaps page, click on the Add Feed button.
    6. Type the URL of your XML sitemap in the pop-up that appears.
    7. Click on the Submit button.
    Your XML sitemap is now queued to be crawled by the Bing spider; check back in a
    day or so to verify that it was successful and free from errors.

    Drupal's SEO tips

    Tthe default SEO options in Drupal provide
    you with basic features you need, such as search engine friendly URLs.


    1.Configuring your Site Details
    2. Creating basic search engine friendly URLs
    3. Optimizing URL aliases
    4. Controlling taxonomy and tagging
    5. Setting up your site's RSS feed


    To add a slogan to your site:
    1. Access the admin dashboard of your Drupal site.
    2. Click on the Configuration link on the admin navigation menu at the top of
    the page.
    3. In the System section of the page, click on the link labeled Site information.
    4. Enter the text you want to use in the field marked Slogan.
    5. Click on the Save configuration button.

    RSS feeds are an effective way of exposing your site's content both to users and to
    the various indexing services. Drupal comes with RSS capabilities; you don't need to
    add any extensions to publish your site's content via RSS. You do, however, need to
    configure the feed and add the subscription link to your site.

    Bing Webmaster-seo-tools

    Bing Webmaster service is the basic tools that help you diagnose and track your site. Registration is
    free.

    Black hat
    Black hat is a label used to describe the use of SEO techniques that are illegal,
    unethical, or of questionable propriety.

    Bot (also known as Robot, Spider, or Crawler)
    A robot, or bot for short, is a software agent that indexes web pages. It is also called
    a spider or crawler.

    Canonical URLs
    Canonical URLs are URLs that have been standardized into a consistent form. For
    the search engines, this typically implies making sure all your pages use consistent
    URL structures, for example, making sure all your URLs start with www.

    Cloaking
    Cloaking is a black hat SEO technique that involves presenting the search engine
    spider with different content than you show a normal site visitor.

    Crawl depth
    search engine spider has indexed a
    website. This is typically an issue relevant for sites with a complex hierarchy of
    pages. The deeper the spider indexes the site, the better.

    pass information from page to page-best seo

    Adding information to the URL: You can add certain information to the
    end of the URL of the new page, and PHP puts the information into builtin
    arrays that you can use in the new page. This method is most appropriate
    when you need to pass only a small amount of information.

    1. Storing information via cookies: You can store cookies — small
    amounts of information containing variable=value pairs — on the
    user’s computer. After the cookie is stored, you can get it from any
    Web page. However, users can refuse to accept cookies. Therefore, this
    method works only in environments where you know for sure that the
    user has cookies turned on.

    2. Passing information using HTML forms: You can pass information to a
    specific program by using a form tag. When the user clicks the submit
    button, the information in the form is sent to the next program. This
    method is useful when you need to collect information from users.

    3. Using PHP session functions: Beginning with PHP 4, PHP functions
    are available that set up a user session and store session information
    on the server; this information can be accessed from any Web page.
    This method is useful when you expect users to view many pages in a
    session.

    Add information to the URL

    A simple method  to move information from one page to the next is to add the
    information to the URL. Put the information in the following format:
    variable=value
    The variable is a variable name, but do not use a dollar sign ($) in
    it. The value is the value to be stored in the variable. You can add the
    variable=value pair anywhere that you use a URL. You signal the start of
    the information with a question mark (?). The following statements are all
    valid ways of passing information in the URL:
    <form action=”page.php?price=4545” method=”POST”>
    <a href=”page.php?price=654”>page</a>
    header(“Location: page.php?tips=SEO”);









    Drupal-Optimizations

    While most optimizations to Drupal are done within other layers of the software stack, there are a few
    buttons and levers within Drupal itself that yield significant performance gains.

    Page Caching
    Sometimes it’s the easy things that are overlooked, which is why they’re worth mentioning again. Drupal
    has a built-in way to reduce the load on the database by storing and sending compressed cached pages
    requested by anonymous users. By enabling the cache, you are effectively reducing pages to a single
    database query rather than the many queries that might have been executed otherwise. Drupal caching
    is disabled by default and can be configured at Configuration -> Performance.

    Bandwidth Optimization
    There is another performance optimization on the Configuration -> Performance page to reduce the
    number of requests made to the server. By enabling the “Aggregate and compress CSS files into one”
    feature, Drupal takes the CSS files created by modules, compresses them, and rolls them into a single file
    inside a css directory in your “File system path.” The “Aggregate JavaScript files into one file” feature
    concatenates multiple JavaScript files into one and places that file inside a js directory in your “File
    system path.” This reduces the number of HTTP requests per page and the overall size of the
    downloaded page.

    Dedicated Servers vs. Virtual Servers

    Dedicated physical servers are going to outperform virtual servers when it comes to network I/O, disk
    I/O, and memory I/O, even in situations where the virtual server supposedly has been allocated more
    resources (CPU, disk, and memory) than a dedicated server of similar specs. An important factor to
    consider is that in a virtualized server environment, the CPU, disk I/O, memory I/O, and network I/O
    have added I/O routing layers between the server OS and the actual hardware. And, therefore, all I/O
    operations are subject to task scheduling whims of the host hypervisor as well as the demands of
    neighboring virtual machines on the same physical host.

    As a real example, a virtual server hosting a database server may have twice as much CPU power as a
    cheaper physical dedicated server; however, the virtual server may also have an added 1ms network
    latency (a very real example from an actual Xen virtualized environment), even between neighboring
    virtual machines. Now, 1ms network latency doesn’t seem like enough latency to care about, until you
    consider that a logged-in Drupal page request may involve hundreds of serialized MySQL queries; thus
    the total network latency overhead can amount to a full second of your page load time. An added latency
    of just one second per page request may also seem affordable; however, also consider the rate of
    incoming page requests and whether this one-second delay will cause PHP processes to pile up in heavy
    traffic, thus driving up your server load. Adding more and bigger virtual servers to your stack does not
    make this I/O latency factor disappear either. The same can be said for disk I/O: virtual disks will always
    be slower than physical local physical disks, no matter how much CPU and memory the virtual server
    has been allocated.

    Apache Pool Size

    When using Apache prefork, you want to size your Apache child process pool to avoid process pool
    churning. In other words, when the Apache server starts, you want to immediately prefork a large pool of
    Apache processes (as many as your web server memory can support) and have that entire pool of child
    processes present and waiting for requests, even if they are idle most of the time, rather than constantly
    incurring the performance overhead of killing and re-spawning Apache child processes in response to
    the traffic level of the moment.
    Here are example Apache prefork settings for a Drupal web server running mod_php.
    StartServers 40
    MinSpareServers 40
    MaxSpareServers 40
    MaxClients 80
    MaxRequestsPerChild 20000
    This is telling Apache to start 40 child processes immediately, and always leave it at 40 processes
    even if traffic is low, but if traffic is really heavy, then burst up to 80 child processes. (You can raise the 40
    and 80 limits according to your own server dimensions.)
    You may look at this and ask, “Well, isn’t that a waste of memory to have big fat idle Apache
    processes hanging about?” But remember this: the goal is to have fast page delivery, and there is no prize
    for having a lot of free memory.

    Moving Directives from .htaccess to httpd.conf

    Drupal ships with two .htaccess files: one is at the Drupal root, and the other is automatically generated
    after you create your directory to store uploaded files and visit Configuration -> File system to tell Drupal
    where the directory is. Any .htaccess files are searched for, read, and parsed on every request. In
    contrast, httpd.conf is read only when Apache is started. Apache directives can live in either file. If you
    have control of your own server, you should move the contents of the .htaccess files to the main Apache
    configuration file (httpd.conf) and disable .htaccess lookups within your web server root by setting
    AllowOverride to None:

    <Directory />
    AllowOverride None
    ...
    </Directory>
    This prevents Apache from traversing up the directory tree of every request looking for the
    .htaccess file to execute. Apache will then have to do less work for each request, giving it more time to
    serve more requests.

    Defining a Block

    Blocks are defined within modules by using hook_block_info(), and a module can implement multiple
    blocks within this single hook. Once a block is defined, it will be shown on the block administration
    page. Additionally, a site administrator can manually create custom blocks through the web interface. In
    this section, we’ll mostly focus on programmatically creating blocks.

    The following properties are defined within the columns of the block table:
    bid: This is the unique ID of each block.

    module: This column contains the name of the module that defined the block.
    The user login block was created by the user module, and so on. Custom blocks
    created by the administrator at Structure -> Blocks -> Add Blocks are
    considered to have been created by the block module.

    delta: Because modules can define multiple blocks within hook_block_info(),
    the delta column stores a key for each block that’s unique only for each
    implementation of hook_block_info(), and not for all blocks across the board. A
    delta should be a string.

    theme: Blocks can be defined for multiple themes. Drupal therefore needs to
    store the name of the theme for which the block is enabled. Every theme for
    which the block is enabled will have its own row in the database. Configuration
    options are not shared across themes.

    status: This tracks whether the block is enabled. A value of 1 means that it’s
    enabled, while 0 means it’s disabled. When a block doesn’t have a region
    associated with it, Drupal sets the status flag to 0.

    weight: The weight of the block determines its position relative to other blocks
    within a region.

    region: This is the name of the region in which the block will appear, for
    example, footer.

    XML-RPC

    A remote procedure call is when one program asks another program to execute a function. XML-RPC is a
    standard for remote procedure calls where the call is encoded with XML and sent over HTTP. The XMLRPC
    protocol was created by Dave Winer of UserLand Software in collaboration with Microsoft (see
    www.xmlrpc.com/spec). It’s specifically targeted at distributed web-based systems talking to each other,
    as when one Drupal site asks another Drupal site for some information.
    There are two players when XML-RPC happens. One is the site from which the request originates,
    known as the client. The site that receives the request is the server.

    If your site will be acting only as a server, there’s nothing to worry about because incoming XML-RPC
    requests use the standard web port (usually port 80). The file xmlrpc.php in your Drupal installation
    contains the code that’s run for an incoming XML-RPC request. It’s known as the XML-RPC endpoint.


    XML-RPC Clients
    The client is the computer that will be sending the request. It sends a standard HTTP POST request to
    the server. The body of this request is composed of XML and contains a single tag named <methodCall>.
    Two tags, <methodName> and <params>, are nested inside the <methodCall> tag.

    Drupal Bootstrap Process

    Drupal Bootstrap Process?
    Drupal bootstraps itself on every request by going through a series of bootstrap phases. These phases are
    defined in bootstrap.inc and proceed.

    Configuration Sets global variables used throughout the bootstrap process.
    Database Initializes the database system and registers autoload functions.
    Variables Loads system variables and all enabled bootstrap modules.
    Session Initializes session handling.
    Page Header Invokes hook_boot(), initializes the locking system, and sends the default HTTP
    headers.
    Language Initializes all the defined language types.
    Full The final phase: Drupal is fully loaded by now. This phase validates and fixes the input
    data.
    Processing a Request
    The callback function does whatever work is required to process and accumulate data needed to fulfill
    the request. For example, if a request for content such as http://example.com/q=node/3 is received, the
    URL is mapped to the function node_page_view() in node.module. Further processing will retrieve the
    data for that node from the database and put it into a data structure. Then, it’s time for theming.

    Requiring Cookies

    If the browser doesn’t accept cookies, a session cannot be established because the PHP directive
    sessions_use_only_cookies has been set to 1 and the alternative (passing the PHPSESSID in the query
    string of the URL) has been disabled by setting sessions.use_trans_sid to 0. This is a best practice, as
    recommended by Zend see http://php.net/session.configuration:

    URL-based session management has additional security risks compared to cookiebased
    session management. Users may send a URL that contains an active session ID
    to their friends by e-mail or users may save a URL that contains a session ID to their
    bookmarks and access your site with the same session ID always, for example.


    When PHPSESSID appears in the query string of a site, it’s typically a sign that the hosting provider
    has locked down PHP and doesn’t allow the ini_set() function to set PHP directives at runtime.
    Alternatives are to move the settings into the .htaccess file (if the host is running PHP as an Apache
    module) or into a local php.ini file (if the host is running PHP as a CGI executable).

    IT company in kolkata

    Matrix Technologies Pvt. Ltd.8/1C, Chowringhee Lane, Room No. 2E, 2nd flKolkata7000162252 8/29
    Media Software61A, S.N.Roy RdKolkata70003424479580
    Metalogic Systems Pvt. LtdPlot-J1/1, Block-EP and GP, Sector-V, Salt LakeKolkata7000912452 61/94
    MicroPro75C Park StKolkata70001622468009
    Millennium Cyberworks13A, Govt. Place(east)Kolkata70006922481910
    Millennium Infosystems86, Ballygunge PlaceKolkata70001924402194 24402
    MindEdge Solutions#10, 7th fl, 8 Camac StKolkata700017222821061
    Mindteck (India) Ltd.SDF Bldg, Module No.529-530, 4th fl, Sec V, Salt LakeKolkata7000912468 3/13
    Mohata Softwares Pvt LtdChitrakoot Building, 6th floorRoom No -61, 230 A AJC Bose RoadKolkata70002022834351
    Navneet Information Technology Pvt. Ltd.65 and 66, Chitrakoot, A.J.C. Bose RdKolkata7000202400680
    Net Always152, S.N. Roy RdKolkata7000384588136
    Netcom Solutions29A, Southend ParkKolkata7000294645872
    NetguruIndiaE2,E3,E4, Block GP, Sec-V, Salt LakeKolkata7000913573575
    Netwatch Online Pvt. Ltd.DL 141 and 143, Sector-II, Salt Lake CityKolkata70009123370275
    NGS Solutions Pvt. Ltd.29B, Lake Temple RoadKolkata7000292463 91/92
    NIIT Technologies Ltd.6B, Pretoria StreetKolkata7000712282 1708/1533
    NIIT Technologies Ltd. (UNIT-II)EM-4/1, Sector-V, Salt LakeKolkata7000913212 5/9
    Octagon Software Technologies Pvt. Ltd.1st Floor, South Wing, Plot-X1-16, Sector-V,Block-EP and GP, Salt LakeKolkata700091235749 1/2
    Ontrack Systems Ltd.276B, Lake GardensKolkata700045241784 34/35
    Optimal Computing Pvt. Ltd.SDF Bldg, 3rd Floor, Module-412, Sector - V, Salt LakeKolkata7000912357 4/7
    Paritosh Software and Information Tech. P. Ltd.SDF Bldg, Module 128, Block-GP, Sector-V, Salt LakeKolkata70009123575777
    PCL ( Pertech Computers Ltd.)FD 254, Sec-III, Salt LakeKolkata7000913214215
    Pecon Software Ltd.835, P Block, New AlipurKolkata70005322100195
    Peerless Technologies Ltd.SDF Bldg, Salt Lake Electronic ComplexKolkata7000912473773
    Pinnacle Infotech SolutionsS.S.B. Sarani, Bidhannagar, DurgapurKolkata
    343 2533250/51
    Praxis Softek Solutions Pvt. Ltd.SDF Building, 5th fl, Module 616, Block-GP, Sector-V, Salt LakeKolkata70009123577473
    Price Waterhouse Associates (P) LtdY14, Block EP, Sector V, Salt LakeKolkata7000913573384-90
    Price Waterhouse Associates (P) LtdSukhSagar, 2/5 Sarat Bose RdKolkata7000204748523
    Quint Software SolutionsEC-5, SEC-I, Salt LakeKolkata70006423581574
    R J Softwares1, Stephen House, 3rd flKolkata700001
    R S Software India LimitedA-2, 234/3A, A J C Bose RoadKolkata70002022475746
    RDG Systems27/A, Asutosh Chowdhury AvenueKolkata70001924760478
    Rebaca Technologies Pvt. Ltd.J-5, 3rd Floor, Block-EP and GP, Sector-V, Salt LakeKolkata70001923577177
    Relate Software Pvt. Ltd.387, New Alipur, Block-GKolkata700053245827 27-30
    Research Engineers Pvt. Ltd.E2-4, Block-GP, Sector-VSalt Lake CityKolkata7000912357 3575/3662
    Soffront Software Pvt. Ltd.STP-II, 1st Floor (East) Plot -53, Block-DN, Sector-V, Salt LakeKolkata70009123673480
    Spear NetworksHB 290, Sec-III, Salt LakeKolkata700091
    Standard Sowfware Pvt. Ltd.692B, block-O, New AliporeKolkata70005324008804
    Stellar Corporation296-1, Bangur AveKolkata70005525745034
    Stesalit Infotech Ltd.25/1, Rustamji StreetKolkata7000192246 7984-87
    Stride Technology Pvt. Ltd.4th Floor, SDF Bldg, Module No. 533, Salt LakeKolkata70009130932195
    Sumishi Webcom2A, 9E 5th Road, SantoshpurKolkata70007524166023
    Sybernet Online138, B.R.B. Basu Road, 2nd FlKolkata70000122434979
    Synapse Communications113 Southern AvenueKolkata700029
    Sys-Con Engineering53-B, Mirza Ghalib Street 2nd FloorKolkata70001722297214 / 309
    Sysmetric (P) Ltd.387, New Alipur, Block-GKolkata7000532407 1212/13/
    Atlas Software Technologies (India) Pvt. Ltd.A1-4, Block-EP & GP, Sector-V, Salt LakeKolkata7000912357-4324/25
    Avant Garde Software Pvt. Ltd.DA-14, Sector-I, Salt Lake CityKolkata7000642334 5689/5527
    Avisere Technology (P) Ltd 1st fl, Kripa Bhawan, Plot-Y20, Block-EP, Sec V, Salt LakeKolkata70009130956688
    Avow Labs2, Lalbazar Street, #402Kolkata70000122317612
    Axiom Technologies Private Limited 34, Dr Sarat Banerjee Road, 1st FloorKolkata7000292463-9725 / 2474-7501
    Azure Software Pvt. Ltd.IA-9, Sector-III, Salt Lake CityKolkata7000912335-8895/96
    Bayrise Technologies Pvt. Ltd.3rd fl, DC-27/26, Sector I, Salt LakeKolkata70006423589760
    BNK E. Solutions Pvt. Ltd.Infinity, 4th fl,Plot A3, Block GP, Sector V, Salt LakeKolkata7000912357 5194/95
    Brainware Consultancy Pvt. Ltd.17B Lake PlaceKolkata70002924663531
    BRI Technologies Pvt. Ltd.Module #233, SDF Bldg, 1st fl, Block GP, Sector V, Salt LakeKolkata70009123577219
    Brick & Click Technologies Pvt. Ltd.SDF Bldg, 5th fl, #634 & 635, Block GP, Sector V, Salt LakeKolkata70009130944793 / 23572427
    CA-TCG Software Pvt. Ltd.BIPPL, Building A, 2nd Floor, Block-EP andGP, Sector-V, Salt LakeKolkata7000912357 5660-65
    Cadworld Infosystems Pvt. Ltd.770 Rajdanga Main Road, Rashbehari ConnectorKolkata7001072441-3820
    Calkol Software Dev Pvt LtdInfinity Towers I, Block GP, Sector -V, Salt LakeKolkata7000912357 2466/67/6
    CapgeminiAsyst Park, GN 37/1, Sector 5, Salt Lake Electronic CityKolkata7000916610 2400
    Chabria Infotech209, A.J.C. Bose RoadKolkata7000172280 2304,3375
    Cirrusweb Infotech Limited7A Hospital Street, 2nd FloorKolkata70007222376528
    CMC Ltd.28, Camac StKolkata7000162373 6151
    Cognizant Technology Solutions (CTS)Plot GN-34/3,Sector-V,Saltlake Electronic CompleKolkata70009123573211 / 23573213
    Computer Exchange24 Park StKolkata7000162249 7405

    XMLHttpRequest-Ajax

    To do this, you must understand the three ways of creating an XMLHttpRequest object
    • IE 5: request = new ActiveXObject("Microsoft.XMLHTTP")
    • IE 6+: request = new ActiveXObject("Msxml2.XMLHTTP")
    • All others: request = new XMLHttpRequest()
    This is the case because Microsoft chose to implement a change with the release of
    Internet Explorer.



    The readyState property
    Now we get to the nitty-gritty of an Ajax call, which all hangs on the readyState property.
    The “asynchronous” aspect of Ajax allows the browser to keep accepting user
    input and changing the screen, while our program sets the onreadystatechange property
    to call a function of our choice each time readyState changes. In this case, a nameless
    (or anonymous) inline function has been used, as opposed to a separate, named function.
    This type of function is known as a callback function, as it is called back each time
    readyState changes

    request.onreadystatechange = function()
    {
    if (this.readyState == 4)
    {
    // do something
    }
    }

    What Is a WAMP, MAMP, or LAMP?

    WAMP, MAMP, and LAMP are abbreviations for Windows, Apache, MySQL, and
    PHP,Mac, Apache, MySQL, and PHP, and Linux, Apache, MySQL, and PHP.
    These abbreviations describe a fully functioning setup used for developing dynamic
    Internet web

    WAMPs, MAMPs, and LAMPs come in the form of a package that binds the bundled
    programs together so that you don’t have to install and set them up separately..

    If you will be maintaining several projects, at some point you may wish to create all the
    directories you will need and the aliases Apache will recognize. An alias is a shortened,
    easily recognizable string used to refer to a longer path name, and it doesn’t have to be
    the same as a directory name.

    Alternative WAMPs
    When software is updated, it sometimes works differently than you’d expect, and bugs
    can even be introduced. So if you encounter difficulties with EasyPHP that you cannot
    resolve, you may prefer to choose one of the various other solutions available on the
    Web instead.
    You will still be able to make use of all the examples in this book, but you’ll have to
    follow the instructions supplied with each WAMP, which may not be as easy to follow
    as the EasyPHP guide.
    Here’s a selection of the best in my opinion:
    • XAMPP: http://apachefriends.org/en/xampp.html
    • WAMPServer: http://wampserver.com/en/
    • Glossword WAMP: http://glossword.biz/glosswordwamp/

    Php tutorial-SYMBOLS

    ! (logical operator)
    != (comparison operator)
    != (inequality operator)
    !== (comparison operator)
    !== (non-identity operator)
    $result->fetch_assoc() function
    $type parameter
    % (modulus operator)
    % (wildcard character)
    %= (combined assignment operator)
    & (bitwise operator)
    & (reference operator)
    && (logical operator)
    + (addition operator)
    + (plus symbol)
    + (union operator)
    ++ (increment operator)
    += (combined assignment operator)
    , (comma operator)
    - (subtraction operator)
    — (decrement operator)
    -= (combined assignment operator)
    . (string concatenation operator)
    .= (combined assignment operator)
    / (division operator)
    /= (combined assignment operator)
    < (comparison operator)
    << (bitwise operator)
    <= (comparison operator)
    = (assignment operator)
    == (comparison operator)
    == (equality operator)
    == (equals comparison operator)
    === (comparison operator)
    === (identity operator)
    ?: (ternary operator)
    @ (error suppression operator)

    Brand Marketing-Publishing Information Using Online Brochures

    Nearly every commercial website in the early 1990s was simply an online brochure or
    sales tool.This type of site is still the most common form of commercial website. Either
    as an initial foray onto the Web or as a low-cost advertising exercise, this type of site
    makes sense for many businesses.

    A brochureware site can be anything from a business card rendered as a web page to an
    extensive collection of marketing information. In any case, the purpose of the site, and its
    financial reason for existing, is to entice customers to make contact with your business.
    This type of site does not generate any income directly but can add to the revenue your
    business receives via traditional means.
    Developing a site like this presents few technical challenges.The issues faced are similar
    to those in other marketing exercises. A few of the more common pitfalls with this
    type of site include
    1 Failing to provide important information
    2 Poor presentation
    3 Failing to answer feedback generated by the site
    4 Allowing the site to age
    5 Failing to track the success of the site

    Testing working using phpinfo()

    Let’s install Apache, PHP, and MySQL under a Unix environment. First, you need to
    decide which extra modules you will load under the trio. Because some of the examples
    covered in this book use a secure server for web transactions, you should install an SSLenabled
    server.
    For purposes of this book, the PHP configuration is more or less the default setup but
    also covers ways to enable the gd2 library under PHP.
    The gd2 library is just one of the many libraries available for PHP.We included this
    installation step so that you can get an idea of what is required to enable extra libraries
    within PHP. Compiling most Unix programs follows a similar process.
    You usually need to recompile PHP after installing a new library, so if you know
    what you need in advance, you can install all required libraries on your machine and
    then begin to compile the PHP module.
    Here, we describe installation on an SuSE Linux server, but the description is generic
    enough to apply to other Unix servers.
    Start by gathering the required files for the installation.You need these items:
    n Apache (http://httpd.apache.org/)—The web server
    n OpenSSL (http://www.openssl.org/)—Open source toolkit that implements the
    Secure Sockets Layer
    n MySQL (http://www.mysql.com/)—The relational database
    n PHP (http://www.php.net/)—The server-side scripting language
    n ftp://ftp.uu.net/graphics/jpeg/—The JPEG library, needed for PDFlib and gd
    n http://www.libpng.org/pub/png/libpng.html—The PNG library, needed for gd
    n http://www.zlib.net/—The zlib library, needed for the PNG library, above
    n http://www.libtiff.org/—The TIFF library, needed for PDFlib
    n ftp://ftp.cac.washington.edu/imap/—The IMAP c client, needed for IMAP


    Is PHP  Working?
    Now you can test for PHP support. Create a file named test.php with the following
    code in it.The file needs to be located in document root path, which should be set up,
    by default, to /usr/local/apache/htdocs. Note that this path depends on the directory
    prefix that you chose initially. However, you could change this in the httpd.conf file:
    <?php phpinfo(); ?>

    Query Strings

    Query string data is very easy for the user to alter, because it ’ s visible and editable within the browser ’ s
    address bar. Therefore, query strings should be used only in situations where sending incorrect data
    won ’ t compromise security.

    You also need to make sure you don ’ t rely on query strings to authenticate users, because people often
    send URLs to friends in emails or instant messaging applications. If your URL contains all the data
    needed to authenticate a user, and that user sends the URL to a friend, then the friend can pretend to be
    them! You ’ ll find that sessions — discussed later in the chapter — are a much better way of authenticating
    users.
    If you ’ ve worked your way through Chapter 9 , you ’ re already somewhat familiar with the concept of
    query strings. You ’ ll remember that you can embed sent form data in a URL by setting the form ’ s
    method attribute to get . When the form data is sent to the server.

    http://localhost/iscript.php?firstname=Tred & lastname=Fish& ...

    the browser adds a query ( ? ) character to the end of the URL, then follows it with each
    of the form fields as “name=value” pairs, with each pair separated by an ampersand ( & ).