Photoshop palette
Creating a custom Swatch
Photoshop training

Customizing Max Interface
Learn how to customize 3d Studio Max interface and viewports
3d Studio Max

Learn Flash
Start to learn Flash. See some important features to start learning this imaging software.
Flash Training

Dreamweaver Enable/Disabled script
How work with Browser with Javascript disabled
Learn Dreamweaver

Understand Sessions
Learn how php sessions work
in Php programming

Redefine tags and create classes with Css
manage different types of html tags, classes and styles
Cascading Style

navigation

Share Tips

Php dirname()

Returns the directory name of the passed string string dirname (string path)

 

Affiliates

Tutorials-expert.comCapital Tutorials free photoshop tutorials

Bookmark

del.iciou.us icon Technorati Ma.gnolia send this page icon

Like this site? Digg it ;)

Redirecting visitors by browser language

Learn php/walkthrough

One of the common feature of many websites is the "choose language" option, usually indicated with a list of flags.. so, with php is possible to give a professional touch to your web site letting php choosing which is your visitors' language as the choice is based on the default browser language used at that moment.

In this case is useful to create a function to speed up your site building or mantainance, simply calling the function as often as needed. But first of all let's examine wich parameter we have to deal with.

Open up your favourite php editor program and type

echo $_SERVER['HTTP_ACCEPT_LANGUAGE'];

remember any time to close the code between the tags <? and ?>
I've tested this echo in IE 6 and Firefox. If you still don't know how affortable is a browser like Firefox, get Firefox and try yourself.

IE gives this string as result of the echo

en,it;q=0.5

The same php code is Firefox gives this:

en,it;q=0.8,it-it;q=0.5,en-us;q=0.3

Pay attention at the first parts of this two strings, they start with en, the rest as ,it show the accept language at the second place, but wait a moment to see how to work with this.
Now all we need is a php function that can get the first and the second letter of the string, we're going to use substr().
The first parameter of substr is the $_SERVER['HTTP_ACCEPT_LANGUAGE']; the one that returns the string already seen.

Now try

$lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
echo $result = substr($lang, 0, 2);
// $lang is the variable, 0 is the point where start to count as the beginnig
// and 2 is where to stop trimming the string, so only two letters.

So we obtain: en.

This code gives en as result, all that we wanted.
Well, to speed up our code let's create a function. If you're familiar with C, there's nothing new in php in creating a function. Every function must be declared typing function and must have a name, followed by (), that may contain one or more variables. In this case there are no variables. The fuction code must be closed with { and }

function yourfunctionname($optionalparameter)
// NOT use ; or it won't work to end this line code
{
//your code
}

Now let's see our function..

function comefrom()
{
$lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
if (substr($lang, 0, 2) == 'en')
{
// if the user's browser language is set to english
// do something
} else {
// if the user's browser language is NOT set to english
// do something else
}
}

The //do something comment may be replaced with everything you want, one of the feature may be the automatic redirection to the user's page language

function comefrom()
{
$lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
if (substr($lang, 0, 2) == 'en')
{
header("Location: english.php");
} else {
header("Location: french.php");
}
}

english.php and french.php are two pre-made pages with content thought for different users.
header() is a php function that makes the redirect to the "Location: .... " indicated.

Now, let's seen how to verify the correct working of our function with different languages


Go to the second page

copyright © 2006-2007 http://www.cagedflame.com 2 on line The Host Choice