9:33:00 PM

(0) Comments

3D shining text

design

Final image




Step 1

Tipe new text layer.

Step 2

Rasterize layer and with selected parts of text and free transform tool conect leters.

Step 3

Duplicate layer.

Step 4

To duplicated layer give stroke.

Step 5

First layer who's now inside of second layer, select and trim second layer.

Step 6

Delete first layer. now we use only duplicated (second) layer.

To second layer give Gradient Overlay like in picture.

Step 7

Duplicate layer and give him vertical transformation.

Step 8

Then select both layers and tranform them with Perspective Transformation.

Step 9

Duplicate them and merge them togheter. then color them and move just a little in front off.

Step 10

Open new layer and start to drawing lighting effects.. Use Pen Tool.

Step 11

Color layer.

Step 12

With Eraser Tool erase some part of light.

Step 13

Then give Lighten effect.

Step 14

Open new layer as background, color him, put him behind and give Gradient Overlay like in picture.

Step 15

Final




ReadMore...

9:18:00 PM

(0) Comments

Fully Shaded Pencil Sketch - part 1

design

Tutorial goal:
I am going to show you an easy way to transform photos into fully shaded pencil sketches. We will be using very basic photoshop skills and two filters. I did this image in CS4, but since it is very basic I would imagine it could be done with any version. So let us begin.

End result:
Fully Shaded Pencil Sketch Final Image




step 1


The Goal

We want to take a photo like the one pictured here and turn it into a fully shaded pencil sketch like the image below.


step 2


Step One:
Select your image and load it into Photoshop of course.
Then click on the "New layer" icon in the Layers pallet to create two empty layers above our original background layer.

Your layer pallet should look like this.


step 3


Step Two:
Select the Paint Bucket Tool.
Make sure you are using the default colors by hitting the d key.
Make sure your foreground color is white.
Select Layer 1 and fill it with white.
Tap the X key to switch the fore & background colors and then select Layer 2, and fill it with black.


step 4


Step Three:
Now while you still have Layer Two (the top layer) selected, go ahead and flip the fore & background colors by taping the X key again.
Ok, Go to Filters / Sketch / Note Paper, and apply the default settings of:
Balance 25
Graininess 10
Relief 11
and select OK


step 5


Step Four:
Still working on our Black Layer, we are going to adjust the levels.
Hit Ctrl / L and pull the sliders in to the edges of the bell curve like so.



step 6


Step Five:
Next thing we will do to the Black Layer is apply a little motion blur. That is under Filters / Blur / Motion Blur.
Use the setting:
Angle -40
Distance 13

This will be the simulation of the pencil marks in the shaded areas of our final image.


step 7


Step Six:
We are done with the Black Layer for now.
Make the Black and the White Layers invisible by clicking on the little Eye icons.

Now, make the original background layer visible, if it is not visible already, by clicking on the small empty box at the left edge of the layer.
Select the original background layer and drag it down to the New Layer icon to duplicate it.
Select the newly created "Background Copy" to make it the active Layer.
Hit Ctrl / Shift / U to desaturate it.
Hit Ctrl / L to bring up the Levels and pull the sliders way in like in this image, to give us a high contrast image. However don't over do it, we don't want it to be stark black and white, we want to keep just a little bit of those mid tones.


step 8


Step Seven:
With our high contrast desaturated image still active, tap Ctrl / I to invert the image.
On the Menu chose, Selections / All.
Then Edit / Copy

Click the Eye icon on the Desaturated image to turn it off.

Make our Black Layer visible again by clicking on the small empty box at the left edge of the layer.
Select the Black Layer to make it the active layer,
Click the Layer Mask icon at the bottom of the layer pallet to add a mask to the Black Layer.
Alt / click on the Mask thumbnail. The image will turn all white.
Chose Edit / Paste to paste the inverted high contrast image into the mask.
Re-click on the eye to turn the black layer back on.
Set the blending mode to Hard Light.

Click on the eye icon on the white layer to make it visible as well.

your image should look like this.


step 9


Step Eight:
Click on the Mask Thumbnail of the Black Layer so that it has the little white box around it.
Hit Ctrl / L to bring up the Levels adjustment again and fine tune the balance of the light and dark to your liking.


step 10


Step Nine:

And finally, we want to lose a little of the regularity in the simulated pencil strokes.

So Select the blur tool and set the strength to about 50.
Select the Black Layer's image thumbnail (the one on the left, not the mask) so that it has the white frame around it.
Brush the blur tool around on the black portions in random circles to soften the little white lines up a bit.

And there you have it.



ReadMore...

9:13:00 PM

(0) Comments

How To Play 3GP Files

design

Most people out there heard about 3GP files but the truth is that few really know how to play this format and when faced with the need to watch 3GP they do not know what to do. That is when tutorials are researched and we try to learn how to do it. Let us see what we are dealing with and this will be the only tutorial you will ever need on playing 3GP files.



3GP is a file format that is a container for video and audio streams. It basically stores streams of video and audio in one file with the extension: .3GP. The video inside the container is usually MPEG-4 Part 2 at H.264 or H.263. The audio stream is usually AAC or AMR. In most situations 3GP files will be found on mobile phones as it is a popular file format to record video.

How to Play 3GP Files on your Personal Computer

Generally speaking, if you want to play video files you will have to use software that is capable of splitting the file and decode it. We are talking about the audio and video streams. You should know that 3GP files can even be played in Windows Media Player but you will have to hold the right software to read and decode the format. The good news is that there is software capable of playing 3GP files and we will now look at options that you have.

VLC Media Player

VLC Media Player is one software that is constantly gaining popularity. We can say that it is actually the easiest way to handle your file playback needs. You need to know that this software does offer support for 3GP. The problem is that it does not feature the needed software that will decode audio AMR. If the 3GP file comes with an audio stream in AAC it will play it. Download VLC Media Player HERE - FREE!

All you will need to do next is go to File and then Open File. Browse to th location where your 3GP file is stored and just click on OK. VLC Media Player will then start to play the file you want.

Haali Media Splitter

Few people have actually heard of this freeware software. You can use it in a connection with DirectShow Players and 3GP video. This software is basically used in order to split AVI, MP4 and MKV. You need to know that this program also goes under the name of Haali Matroska Splitter due to the focus on MKV files. Remember that we are basically talking about a decoder and not an actual player. Download Haali Media Splitter HERE - FREE!

Windows Media Player

Windows Media Player is basically a DirectShow player. It is capable to play most 3GP files but will need extra software in order to achieve this. You can use FDDShow and Haali Media Splitter for this.

3GP Files Playback in DirectShow

Once you are capable of splitting 3GP files you should be able to play them as well by using a DirectShow player. The most common example stands in Windows Media Player or Media Player Classic. There is a big chance you have at least one of them installed on your personal computer.How To Play 3GP Files




ReadMore...

8:58:00 PM

(0) Comments

Tutorials and Guides for DVD to 3GP Converter

design

How to use DVD to 3GP Converter

Sothink DVD to 3GP Converter, a powerful and easy-to-use 3GP converter for you to convert DVD to 3GP video, work with almost all popular types of mobiles . It can convert faster and produce better picture quality than other DVD to 3GP converters. Sothink DVD to 3GP Converter enables you to select and remove the clips, extras, subtitles freely, and adjust audio volume with ease by gain control. AAC (advanced audio coding) is supported when you rip DVD to 3GP, this can help you get better audio quality on mobile.


Step 1 Select Source DVD

Insert the DVD disk into your DVD-ROM, and choose "Select Source DVD drive".
If you have more than one DVD drive, make sure which one has got the DVD disk and you have selected the right one.

If the DVD movie is stored in the hard drive, choose "Select DVD folder from hard disk drive".
You should manually specify the DVD folder in the window beneath which show the file system of your computer.

Click "Next" to load the DVD movie.


Step 2 Select Movies to Convert

In the dialog of this step you can see a list of all the movies included in the DVD disk.

  • Choose movies

    Normally, a DVD contains a main movie and several extra movies. And a movie consists of one video, several audios and the relating subtitles. You can see the detailed information of a movie in the list, including the movie's duration, the audio and subtitle's language, the format and number of channels of the audio. When you select one movie, the software will select the video track, one audio and the corresponding subtitle for you by default.

    Select "None" for "Audio Track" or "Subtitle" to remove the audio or the subtitle of a movie.
    Uncheck the "Video Track" and check one "Audio Track", you can get an AVI formatted audio with no picture.

  • Create movies separately

    Check this selection: "Convert the movies and save the created files repectively", then the movies will be processed separately. If the box is unchecked, then all the selected movies will be converted and saved as one file.

Step 3 Specify the Settings

Output Directory

Select a path that you want to save the created 3GPP/3GPP2 files. Each output file will be automatically named by the program.

File format

3GPP/3GPP2

There are two formats of 3G video file: 3GPP and 3GPP2. 3GPP uses ".3gp" as file extension, and 3GPP2 uses ".3g2". Generally, you can select 3GPP as the output format to avoid compatibility problems.

Audio Settings

Specify the audio and video settings for the conversion.

    • Audio format

      AMR-NB - This is the most compatible audio encoding format, and it can be supported by all mobile phones. AMR-NB formatted audio has lower requirements for mobile hardware. But its quality is not satisfying. The sample rate is fixed to 8K Hz, the audio bit rate can not be higher than 12.2K bps, and and stereo (2 channels) is not supported.

      AAC-LC - AAC-LC formatted audio has better quality, as you can choose higher sample rate, bit rate, and stereo channel. But some mobiles of former types might not support this format. You can check the manual of your mobile to see if it supports AAC-LC encoded audio.

      Please set the Audio format, and the relating sample rate, bit rate, channel according to your mobile's capability.

    • Gain

      Gain: You can adjust the audio volume by dragging the gain slider. The range is from -5.0 to 30.0db. Please note that if the gain is too high, the audio may get distortion.

Video Settings

  • [Dimension]:

    There are 3 different dimensions available - 128 x 96, 176 x 144 and 352 x 288. Please make sure the dimension does not exceed the resolution limit of your mobile when setting it. For example, the resolution of Nokia 2855 is 160 x 128, so you can only select 128 x 96. The resolution of Sony Ericsson W810C is 176 x 220, thus you can choose 128 x 96 or 176 x 144. Certainly, you'd better choose 176 x 144 for better quality.

  • [Bit rate]:

    Choose higher bit rate to get better video quality. Some mobiles may not support high bit rate videos or would have unsynchronization problem during playback, so please set the bit rate carefully.

  • [Frame rate]:

    Most of the mobiles support 15fps video playback. Some high-end mobile phones even support 30fps video playback. However, You can select "Do not change" to let Sothink 3GP Video Converter keep the frame rate of the original video to get the best video quality.

Conversion Process
  • Status

    During the conversion process, the program will show the detailed conversion status, including:

    • File - file path and name.
    • Estimated time - the overall estimated time that the conversion would take.
    • Elapsed time
    • Time Left
    • Progress - the finished percentage of the conversion.
  • Post-processing Options

    The program will show the detailed conversion information to you, including the Estimated Overall Time, Time Left, etc.
    And there are two operations you can choose to let the program do after the conversion:

    "Play a sound when conversion is finished" - Let the program tell you that the conversion is done by playing a sound.

    "Shut down the computer after all tasks are finished" - Let the program automatically shut down your computer after all tasks are done.

Conversion Result

When the conversion is finished, the program would give a result summary, which shows the number of total source files, successfully converted files, and failed files. Click "Open Folder" to open the folder where the created video files are saved.

Click "Finish" to back to beginning panel, you can continue to convert other DVD.
Click "Exit" to quit the program.




ReadMore...

1:33:00 AM

(0) Comments

PHP and Excel

design

Many of my customers hold data in Excel files. Then, when they decide to build a web based, database driven project controlled by PHP, ask me to move their Excel data into the MySQL. Whether it’s possible and how to do it, will be the content of this post.

Since the PHP allows you to create an OLE compatible COM object with its methods and properties, the solution is more than easy. All you need is take a brief look into the PHP COM Manual Pages to be able to understand the following explanatory example. I wrote this code as a PHP CLI script which seems to me more usable for interaction with other applications.

Before we start, let’s introduce input parameter of the function which is responsible for data retrieve from an Excel file and output it as a matrix, representing the Excel table.

  • $file - (string) absolute path to the Excel data file
  • $sheet - (int) order number of the sheet which data we want to extract
  • $rows - (array) rows selected from the sheet
  • $cols - (array) columns selected from the sheet

The names of variables were selected to represent their meaning (semantic names) and facilitate the understanding of script work. But if you’re still confused of input parameters or output, don’t be affraid, following examples will clarify it more. So, let’s move forward to the PHP and Excel interaction.

function getDataFromExcel($file, $sheet, $rows, $cols)
{
// COM CREATE
fwrite(STDOUT, "----------------------------------------\r\n");
$excel = new COM("Excel.application") or die ("ERROR: Unable to instantaniate COM!\r\n");
fwrite(STDOUT, "Application name: {$excel->Application->value}\r\n") ;
fwrite(STDOUT, "Loaded version: {$excel->Application->version}\r\n");
fwrite(STDOUT, "----------------------------------------\r\n\r\n");

// DATA RETRIEVAL
$Workbook = $excel->Workbooks->Open($file) or die("ERROR: Unable to open " . $file . "!\r\n");
$Worksheet = $Workbook->Worksheets($sheet);
$Worksheet->Activate;
$i = 0;
foreach ($rows as $row)
{
$i++; $j = 0;
foreach ($cols as $col)
{
$j++;
$cell = $Worksheet->Range($col . $row);
$cell->activate();
$matrix[$i][$j] = $cell->value;
}
}

// COM DESTROY
$Workbook->Close();
unset($Worksheet);
unset($Workbook);
$excel->Workbooks->Close();
$excel->Quit();
unset($excel);

return $matrix;
}

Now, when the key function is defined we can fire an extraction and insertion process:

// define inputs
$xls_path = "C:\\Users\\Johny\\Documents\\Business\\excel_data.xls"; // input file
$xls_sheet = 1; // sheet #1 from file excel_data.xls
$xls_rows = range(2, 270, 1); // I want extract rows 2 - 270 from excel_data.xls with step 1 row
$xls_cols = array("A", "B", "C", "D", "E", "F"); // I want to extract columns A - F from excel_data.xls

// initiate MySQL connection
mysql_connect("server", "username", "password") or die("Unable to connect MySQL server!");
mysql_select_db("database") or die("Unable to select requested database!");

// retrieve data from excel
$data = getDataFromExcel($xls_path, $xls_sheet, $xls_rows, $xls_cols);

// insert retrieved data into database
foreach ($data as $line)
{
$i = 0;
foreach ($line as $col => $entry)
{
// create the SET string for INSERT query
$i++;
$string .= "`" . $col . "` = '" . $entry . "'";
if ($i < count($line))
$string .= ", ";
}
mysql_query("INSERT INTO `table` SET " . $string . "");
}

The stated above example is simplified to emphasize the core of process, not necessary details may lead to unclear interpretation. It is supposed that readers have at least basic knowledge of PHP and MySQL.

So, as you can see there’s pretty simple way how to import data from excel file directly to database using PHP. The PHP COM interface allows you to do the same with many other types of application (Word, PowerPoint, etc.).






ReadMore...

1:20:00 AM

(0) Comments

Using Stored procedure with mySQL and PHP

design

Writing external scripts to perform complex data handling is a tedious affair. The best way to automate tasks straightaway into the server is by using Stored Procedures. It is very useful to make them as flexible as possible, as it facilitates easy identification of any errors and can be used for executing a variety of tasks as well.

What are Stored Procedures?

Stored procedures are set of SQL commands that are stored in the database data server. After the storing of the commands is done, the tasks can be performed or executed continuously, without being repeatedly sent to the server. This also helps in decreasing the traffic in the networks and also reduces the CPU load.


There are many advantages of using stored procedures, which include:

  • The functionality is application and platform related
  • Functionality has to be developed only once, and all applications can call the same commands
  • Task execution becomes easier and less complicated
  • Network Traffic reduced to a greater extent
  • Centralization of all commands made possible, which is helpful for various applications that repeatedly call the same set of complicated commands
  • Runs on any kind of environment

MySQL Stored Procedures

For few years, Oracle and Microsoft SQL servers were having one upper hand over MySQL by having the facility to use the advantage of Stored Procedures. But this advantage has become a thing of the past now. With MySQL 5, you can use Stored Procedures the way you have been utilizing with other servers.

The syntax for using Stored Procedures is as follows:

Syntax for Stored Procedures

CREATE
    [DEFINER = { user | CURRENT_USER }]
    PROCEDURE sp_name ([proc_parameter[,...]])
    [characteristic ...] routine_body 
CREATE
    [DEFINER = { user | CURRENT_USER }]
    FUNCTION sp_name ([func_parameter[,...]])
    RETURNS type
    [characteristic ...] routine_body    
proc_parameter:
    [ IN | OUT | INOUT ] param_name type    
func_parameter:
    param_name type 
type:
    Any valid MySQL data type 
characteristic:
    LANGUAGE SQL
  | [NOT] DETERMINISTIC
  | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
  | SQL SECURITY { DEFINER | INVOKER }
  | COMMENT 'string' 
routine_body:
    Valid SQL procedure statement

Application

MySQL Stored Procedures can be applied in absolutely any place. Right from complex applications to simple procedures, these stored procedures can be utilized in absolutely any place.

Few of the many places that MySQL Stored procedures can be used are:

  • When diverse client applications are structured using various languages in different platforms
  • When security is of highest importance, like in financial institutions, the users and applications would have no direct access to the database tables. This provides excellent secured environment.
  • When very few database servers service the client machines, thereby providing efficient performance

Though not as mature as Oracle, DB2 or the SQL Server, the MySQL Stored Procedures is definitely worth a try. If the structure of the database is the same, the same stored procedures can be used for all.

A simple example for MySQL Stored Procedure

To calculate the area of a circle with given radius R, the following commands can be given

delimiter //

create function Area (R double) returns double

deterministic

begin

declare A double;

set A = R * R * pi();

return A;

end

//

delimiter ;

And to call it from php code to display the area of a circle with radius 22cm,

$rs_area = mysql_query(“select Area(22)”);

$area = mysql_result($rs_area,0,0);

echo “The area of the circle with radius 22cm is ”.$area.” sq.cm”;

?>

ReadMore...

1:11:00 AM

(0) Comments

POSIX Regular Expressions in PHP

design

Regular expression is the basic functionality of pattern comparison. PHP offers two sets of functions for regular expressions - POSIX style and Perl style. Both types have their unique syntax and this post should give basic overview of the POSIX one.

Regular expression (called regex) is nothing more just sequence of characters (called pattern) which is compared agains a text in which we search. Patterns contain a combination of metacharacters and literals. Metacharacters (also called operators) define how literals (also called constants) should be treated on pattern evaluation against evaluated expression. For example, POSIX pattern [a-z0-9] which determines valid expression containig lowercase letters or number 0-9 has two metacharacters (opening square bracket and closing square bracket) and two literal ranges (a-z and 0-9, also called classes). In other words, literal means character itself whilst metacharacter means control character. Why it’s so important to distinguish between metacharacters and literals? The reason is that if you need to use metacharacters in pattern as a literal you must precede it by \ (backslash), very often said: it must be escaped. For example, if you need to add a dot in the regular expression pattern and don’t want to use this dot as a control character with meaning “any character” it is necessary to escape it - use it with backslash (see the table below for an example).

Following table lists POSIX metacharacters:

Metacharacter Description Example
^ matches the starting position within the string ^(([A-Za-z0-9_-]+)…
. matches any one character a.c matches “abc”
* matches the preceding element zero or more times ab*c matches “ac”, “abc”, “abbbc”
[xyz]* matches “”, “x”, “y”, “z”, “zx”, “zyx”, “xyzzy”
+ matches the preceding element one or more times ba+ matches “ba”, “baa”, “baaa”
? matches the preceding element zero or one time ba? matches “b” or “ba”
{m,n} matches the preceding element at least m and not more than n times {3,5} matches only “aaa”, “aaaa”, and “aaaaa”
() defines a marked subexpression ^(([A-Za-z0-9_-]+)[.]([A-Za-z0-9_-]+))+$
[] defines a class of characters [0-9] matches any one number (range class)
[a.c] matches only “a” or “.” or “c” (list class)
[^] matches a single character that is not contained within the brackets [^abc] matches any char other than “a”, “b”, or “c”
[^a-z] matches any single char that is not a lowercase letter from “a” to “z”
$ matches the ending position of the string or the position just before a string-ending newline …[.]([A-Za-z0-9_-]+))+$
| matches either the expression before or the expression after the operator abc|def matches “abc” or “def”
\ changes metacharacter to literal (.+) matches any expression containing at least one arbitrary character
(\.+) matches any expression containing at least one dot character

Following table lists POSIX character classes for more comfortable programming:

Class Description Alternative
[:alpha:] uppercase and lowercase letters [A-Za-z]
[:alnum:] uppercase and lowercase letters and numbers [A-Za-z0-9]
[:cntrl:] control characters like TAB, ESC or Backspace -
[:digit:] numbers from zero to nine [0-9]
[:graph:] ASCII (33-126) printable characters -
[:lower:] lowercase letters [a-z]
[:punct:] punctual characters: ~`!@#$%^&*()-_+={}[]:;’<>,.?/ -
[:upper:] uppercase letters [A-Z]
[:space:] empty characters like space, newline, carriage return -
[:xdigit:] hexadecimal numbers [a-fA-F0-9]

This table lists PHP POSIX regex functions:

Prototype Description
int ereg (string $pattern, string $string [, array &$regs]) Searches a string for matches to the regular expression given in pattern in a case-sensitive way.
int eregi (string $pattern, string $string [, array &$regs]) This function is identical to ereg() except that it ignores case distinction when matching alphabetic characters.
string ereg_replace (string $pattern, string $replacement, string $string) This function scans string for matches to pattern, then replaces the matched text with replacement.
string eregi_replace (string $pattern, string $replacement, string $string) This function is identical to ereg_replace() except that ignores case distinction when matching alphabetic chars.
array split (string $pattern, string $string [, int $limit]) Splits a string into array by regular expression.
array spliti (string $pattern, string $string [, int $limit]) This function is identical to split() except that this ignores case distinction when matching alphabetic characters.
string sql_regcase (string $string) Creates a regular expression for a case insensitive match.

Regular expressions are very usefull when we need to check some user inputs. If you have a contact form on your site which contains mandatory e-mail address field, how would you check whether user input string has valid e-mail format? Use regular expression match! Here are some examples for better understanding:

  • ^(([A-Za-z0-9_-]+)[.]([A-Za-z0-9_-]+))+$ : matches a hostname expression (hostname.example.com)
  • ^([0-9]{1,3})\.([0-9]{1,3})[.]([0-9]{1,3})\.([0-9]{1,3})$ : matches an IP address (192.168.10.122)
  • ^([A-Za-z0-9._-]+)@([A-Za-z0-9._-]+)[.]([a-z]{2,4})$ : matches an e-mail address (mailbox@example.com)

Maybe you have noticed that sometimes there is a choice how to write regular expression pattern. In the first and third example above the dot character is expressed as a member of list class [.] whilst in the second example (IP address regexp) the dot is expressed as an escaped metacharacter \. at some places (this was done for demonstration purposes).

Another very important detail which should be noted is the fact that if you need to use metacharacters in a range class or list class it must be placed at the end of a content of such class, right before closing square bracket [... _-].

You can play with staed above examples by pasting the following code into a regexp.php file and run it in a browser:



POSIX Regexp Tester



Enter String:



Select Pattern:

Hostname

IP Address

Email Address




' . $pattern . '
';
echo 'String: ' . $string . '

';

echo 'Match: ';
if (ereg($pattern, $string))
echo 'OK';
else
echo 'WRONG';
?>



I hope this post gave you at least basic overview of POSIX regular expressions and their use in PHP. In some of future articles we will take a look at Perl style regular expressions.




ReadMore...

1:07:00 AM

(0) Comments

Using the PHP Include Command

design

This tutorial will teach you the very basics on how to use a PHP #include command. The #include command is used to insert the content of an external HTML page into an existing PHP page. For example, the header and footer of this page you are reading right now are actually external files which are loaded into the page when you request the server to display the page. Using this technique makes it easier to update the header of all the pages of our website by simple updating a single included header file without having to update any code in any of our pages.

This technique can be used anyone without having any advanced PHP knowledge. This tutorial will teach you how to use this command.

Our tutorial is divided into two main sections:

  • Server Requirements
  • Code Implementation

Server Requirements

In order to run this command you will need to have PHP installed on your server. You can check this with your hosting service provider. Any modern version of PHP will be sufficient to execute this command. Other than that, there are no specific server requirements.

Code Implimentation

We are going to create a very simple example in which a HOME page includes a HEADER into it. This means that we are going to need two pages the HOME page and teh HEADER page.

We will start off with the header page. Using any web editing tool, simply create an HTML page with the following content:

Oman3D - The Creative Adventure!

Note that you do not need to create a proper HTML file with ,

, or tags, simply because our header page will not be displayed by the browser by itself and instead it will be included as part of our HOME page.

Save this file as header.html.

It is now time to create our HOME page. Using any web editing tool, create an HTML page with the following code:



My Oman3D Homepage/title> <br /> </head> <br /> <br /> <body> <br /> <br /> </body> <br /> <br /> </html> </div> <p>Our page does not have anything in it yet other than the page title tag. We are now going to add our #include command in the body of the page:</p> <div class="code"><html> <br /> <head> <br /> <title>My Oman3D Homepage/title> <br /> </head> <br /> <br /> <body> <br /> <strong><?php include("header.php"); ?></strong> <br /> </body> <br /> <br /> </html> </div> <p>That should insert our header at the start of our body when our page is displayed on the server. If you want to have other content in your page you can simply insert it below that tag.</p> <div class="code"><html> <br /> <head> <br /> <title>My Oman3D Homepage/title> <br /> </head> <br /> <br /> <body> <br /><?php include("header.php"); ?> <br /> <strong><h2>Welcome!</h2> <br /> <p>Thanks for visiting my website, I hope that you have a great time here!</p></strong> <br /> </body> <br /> <br /> </html> </div> <p>That should do it. You now have to save this file as <em>home.php</em>. You file <strong>MUST END WITH THE .PHP EXTENSION FOR THE SERVER TO PROCESS THE COMMAND. DO NOT FORGET THIS.</strong></p> <p>That should do it, you will not be able to test this command on your computer unless if you have a PHP server installed. The easiest way to try this is to upload it to your server. Simply upload both files to the same directory and then access <em>home.php</em> to see the content of your <em>header.html</em> file displayed in there along with your home page content!</p> <p>This concludes our tutorial. I hope that you learnt something new from it. If you have any questions or comments feel free to post them at <span style="text-decoration: underline;">the forum</span>.</p> <p>- End of Tutorial</p></span> <br /><span class="fullpost"> <br /> <br /> </span> <a href='http://blogerdesign.blogspot.com/2009/01/using-php-include-command.html'><strong>ReadMore...</strong></a></p> </div> <div style='clear: both;'></div> <div class='bottom'></div> </div> </div> <div class='block center'> <div class='header'> <p class='date'>1:03:00 AM</p> <p class='comments'><a href='http://blogerdesign.blogspot.com/2009/01/using-codeigniter-for-php-application.html#comment-form' onclick=''>(0) Comments </a></p> <p class='c'></p> </div> <div class='wrap'> <div class='top_post'> <h3><a href='http://blogerdesign.blogspot.com/2009/01/using-codeigniter-for-php-application.html'>Using Codeigniter for PHP application development</a></h3> <div class='meta'> <p class='author'>design</p> <p class='tags'><a href='http://blogerdesign.blogspot.com/search/label/Php' rel='tag'>Php</a> </p> <p class='c'></p> </div> </div> <div class='post-header-line-1'></div> <div class='content'> <style>.fullpost{display:none;}</style> <p><p class="textfont">With many software frameworks available online nowadays, with many pros and cons on their side, it has become very important to check out complete details of these frameworks before applying them. Amongst the various kinds of software frameworks, the PHP Framework is more popular nowadays. Being simple to work on and easy to use, PHP frameworks are soon becoming the catchword of software frameworks</p><span class="fullpost"><p class="textfont">There are many advantages of using PHP frameworks:</p> <ul class="sub"><li><span class="textfont">Applications can be built quickly and easily </span> </li><li><span class="textfont">Simple to debug </span> </li><li><span class="textfont">Secured </span> </li><li><span class="textfont">Easy to install and use </span> </li><li class="textfont">Good for applications utilizing multiple platforms</li></ul> <p class="orange_titles">CodeIgniter (CI)</p> <p class="textfont">One of the effective PHP Frameworks is the CodeIgniter. Web applications with advanced features can be readied using the CodeIgniter. Simpler for the beginners, CI follows an MVC (Model View Controller) pattern, thereby enabling in easy learning. Also, due to the usage of conventional PHP coding, the existing codes can be ported using this PHP framework. Also the simplicity with which it works and the speed that it has when compared to the other frameworks, is definitely considerable</p> <p class="orange_heads">Striking features of CodeIgniter</p> <p class="textfont">There are many features that are quite distinguishing, in CI. Few of the most important features are explained below:</p> <h3 class="textfont">User Guide</h3> <p class="textfont">One of the most important features of the CodeIgniter is that it has a very impressive user guide. The way the documentation has been done is simply marvelous and highly useful for coders to know more about the working. </p> <h3 class="textfont">Simplicity</h3> <p class="textfont">CodeIgniter is simple and a major portion of the work gets completed in the controllers and uploading the libraries. Since the workings are clear and open, it is very easy to understand what is happening and therefore, simple to use.</p> <h3 class="textfont">Model Handling</h3> <p class="textfont">While working with models, CodeIgniter uses a straight way of handling. Standard SQL queries can be mimed using few simple commands. Also creation of model objects, loading it and introducing methods to deal with a customized task is also possible. </p> <h3 class="textfont">Data Validation</h3> <p class="textfont">Data validation is a major thing while working on models. Here a validation class is used to validate data. First, few rules are defined and assigned to the object to be validated. The data that is sent through the URL is automatically validated by the validation object. Even certain error messages can also be automated the same way, using data validation class. </p> <p class="textfont">There are many other advantages of using CI:</p> <ul class="sub"><li class="textfont">Migration from one server to another is easier and hassle-free. Also installation is easier as well.</li><li class="textfont">CI is very easy to handle and also to customize. In case a new functionality has to be applied, it can be done without affecting the customization. </li><li><span class="textfont">With MVC based framework, it offers flexibility and easy management </span> </li><li><span class="textfont">Active Record Implementation is simply superb and easy to remember. </span> </li><li><span class="textfont">Configuration and customization of these configuration files are also easy, thus facilitating easy working with various types of developers. </span> </li><li><span class="textfont">The collection of libraries that it posses is also good enough. </span> </li><li class="textfont">And as previously said, awesome documentation of the user guide, which makes any coder easy to use the whole framework. </li></ul> <p class="textfont">Given below is a simple example to display user information from database. Using CodeIgniter, the programmer and designer can simultaneously work on the same project, without having to wait for each other to complete their parts. Here the first part “Create a controller named user.php and store it in Controllers folder” is prepared by the programmer, and the second part “Create a view named user.php and store it in views folder” is prepared by the designers simultaneously.</p> <p class="textfont"> # Create a controller named user.php and store it in Controllers folder</p> <p class="formfont"><!--</p--> <p class="formfont">class User extends Controller {</p> <p class="formfont"> function User()</p> <p class="formfont"> {</p> <p class="formfont"> parent::Controller(); </p> <p class="formfont"> } </p> <p class="formfont"> function view() {</p> <p class="formfont"> $this->load->database(); # This line is not needed if database library is put into autoload</p> <p class="formfont"> $query = $this->db->query("SELECT username, email FROM tbl_users"); </p> <p class="formfont"> if($query->num_rows() >0) {</p> <p class="formfont"> foreach($query->result_array() as $row) {</p> <p class="formfont"> $users[] = $row;</p> <p class="formfont"> }</p> <p class="formfont"> $data['users'] = $users;</p> <p class="formfont"> }</p> <p class="formfont"> </p> <p class="formfont"> $this->load->view('user', $data); </p> <p class="formfont"> }</p> <p class="formfont"> } </p> <p><span class="formfont">?></span> </p> <p><span class="textfont"># Create a view named user.php and store it in views folder</span> </p> <p class="textfont"> <span class="formfont"> <table border="0" cellspacing="1" cellpadding="5"></span></p> <p class="formfont"> <tr></p> <p class="formfont"> <td><b>User Name</b></td></p> <p class="formfont"> <td><b>Email</b></td></p> <p class="formfont"> </tr> </p> <p class="formfont"><!--</p--> <p class="formfont"> if(is_array($users)) { </p> <p class="formfont"> foreach($users as $key => $value) {</p> <p class="formfont"> ?></p> <p class="formfont"> <tr></p> <p class="formfont"> <td><!-- echo $value['username']?--></td></p> <p class="formfont"> <td><!-- echo $value['email']?--></td></p> <p class="formfont"> </tr> </p> <p class="formfont"> <!--</p--> <p class="formfont"> }</p> <p class="formfont"> else {</p> <p class="formfont"> ?></p> <p class="formfont"> <tr><td colspan="2">No users found</td></tr></p> <p class="formfont"> <!-- </p--> <p class="formfont"> }</p> <p class="formfont"> } </p> <p class="formfont">?> </p> <p class="textfont"><span class="formfont"> </table></span> </p><br /><span class="fullpost"></span><br /><br /> </span> <a href='http://blogerdesign.blogspot.com/2009/01/using-codeigniter-for-php-application.html'><strong>ReadMore...</strong></a></p> </div> <div style='clear: both;'></div> <div class='bottom'></div> </div> </div> <div class='block center'> <div class='header'> <p class='date'>12:18:00 AM</p> <p class='comments'><a href='http://blogerdesign.blogspot.com/2009/01/designing-beautiful-interior.html#comment-form' onclick=''>(0) Comments </a></p> <p class='c'></p> </div> <div class='wrap'> <div class='top_post'> <h3><a href='http://blogerdesign.blogspot.com/2009/01/designing-beautiful-interior.html'>Designing a beautiful interior illustration</a></h3> <div class='meta'> <p class='author'>design</p> <p class='tags'><a href='http://blogerdesign.blogspot.com/search/label/Photoshop' rel='tag'>Photoshop</a> </p> <p class='c'></p> </div> </div> <div class='post-header-line-1'></div> <div class='content'> <style>.fullpost{display:none;}</style> <p>Our subject is designing a beautiful interior illustration. I did it on big document in about 150 DPI so it can be easily printed. In this tutorial we'll walk through the basics of Photoshop effects and Masks.<br /><br />For begin we'll make basic forms and some of the effects and after we'll manipulate these forms sing transformation and distort tools that we have in Photoshop.<br /><br />So let's get going and start our tutorial by making a document with these dimensions. <br /><br /><img alt="designgin a beautiful interior illustration" id="id1793014610187461" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/1.jpg" style="width: 401px; height: 226px;" /><br /><br /><span class="fullpost"><br /><br />... and a new layer. <br /><br /><img alt="designgin a beautiful interior illustration" id="id10829189558571184" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/2.jpg" /><br /><br /> Grab Polygonal lasso tool and make a selection. Just basic form selection. <br /><br /><img alt="designgin a beautiful interior illustration" id="id6368745850337556" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/3.jpg" style="width: 400px; height: 214px;" /><br /><br /> Copy the selection into a separate layer. <br /><br /><img alt="designgin a beautiful interior illustration" id="id4228715391363763" pbshowpopbar="true" rel="lightbox" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/4.jpg" style="width: 401px; height: 337px;" /><span style="position: relative; left: 1px; top: -578px;"><div style="border-style: none; margin: 0px; padding: 0px; width: 649px; height: 20px; position: absolute; left: 4px; top: -10px; cursor: auto; text-align: center; font-family: Arial,Verdana,Sans-Serif; font-size: 8pt; background-color: transparent; color: rgb(255, 0, 0); z-index: 1;" id="popBoxDivText1">Click image to expand.</div></span><br /><br /><br /><br /><img alt="designgin a beautiful interior illustration" id="id4661592822966891" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/5.jpg" /><br /><br />I've also temporary applied satin layer effect so the layer could be better seen on white background. As you can see I've selected and copied to a separate layer another shape; this time thinner and smaller.<br /><br />So we got to have 3 layers and a background. <br /><br /><img alt="designgin a beautiful interior illustration" id="id9490706876578965" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/6.jpg" /><br /><br />I'm now beginning to color and apply some effects using layer styles. On this one. Here you can see all the effects already applied.<br /><br /><img alt="designgin a beautiful interior illustration" id="id8965819601987451" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/7.jpg" style="width: 401px; height: 450px;" /><br /><br />Now let's see these effects. Watch the Screenshots carefully because the satin and bevel angles, for example, should be precise to reach this kind of effect.<br /><br /><img alt="designgin a beautiful interior illustration" id="id13034193065469202" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/8.jpg" style="width: 401px; height: 292px;" /><br /><br /><br /><br /><img alt="designgin a beautiful interior illustration" id="id213240654694271" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/9.jpg" style="width: 401px; height: 292px;" /><br /><br /><br /><br /><img alt="designgin a beautiful interior illustration" id="id9525959113286391" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/10.jpg" style="width: 401px; height: 292px;" /><br /><br /><br /><br /><img alt="designgin a beautiful interior illustration" id="id7819177293380275" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/11.jpg" style="width: 401px; height: 292px;" /><br /><br /><br /><br /><img alt="designgin a beautiful interior illustration" id="id43953314363395246" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/12.jpg" style="width: 401px; height: 292px;" /><br /><br /> Now you've seen the result and I would like to apply a layer mask to have my object less solid. <br />SO tape Q to enter quick mask. Use a round black to white gradient on the layer mask. See my layer mask and the effect. <br /><br /><img alt="designgin a beautiful interior illustration" id="id44391209833345946" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/13.jpg" style="width: 401px; height: 436px;" /><br /><br /><br /><br /><img alt="designgin a beautiful interior illustration" id="id4628646661499831" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/14.jpg" style="width: 401px; height: 428px;" /><br /><br />The next and the final stem for this Part will be to create a layer right here. <br /><br /><img alt="designgin a beautiful interior illustration" id="id6382502955002958" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/15.jpg" /><br /><br />...and overlay it with this very gradient. <br /><br /><img alt="designgin a beautiful interior illustration" id="id9009703929073085" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/16.jpg" style="width: 400px; height: 457px;" /><br /><br /> <br /><br /><img alt="designgin a beautiful interior illustration" id="id921062629301845" src="http://www.eyesontutorials.com/images/Designing/Jeka/tut97_Beautiful_Interior_Illustration/16_.jpg" style="width: 401px; height: 182px;" /><br /><br /></span> <a href='http://blogerdesign.blogspot.com/2009/01/designing-beautiful-interior.html'><strong>ReadMore...</strong></a></p> </div> <div style='clear: both;'></div> <div class='bottom'></div> </div> </div> <!--Can't find substitution for tag [adEnd]--> </div> <div class='blog-pager' id='blog-pager'> <span id='blog-pager-newer-link'> <a class='blog-pager-newer-link' href='http://blogerdesign.blogspot.com/search?updated-max=2009-01-08T20:43:00%2B07:00&max-results=10&reverse-paginate=true' id='Blog1_blog-pager-newer-link' title='Newer Posts'>Newer Posts</a> </span> <span id='blog-pager-older-link'> <a class='blog-pager-older-link' href='http://blogerdesign.blogspot.com/search?updated-max=2009-01-03T00:18:00%2B07:00&max-results=10&reverse-paginate=true&start=10&by-date=false' id='Blog1_blog-pager-older-link' title='Older Posts'>Older Posts</a> </span> <a class='home-link' href='http://blogerdesign.blogspot.com/'>Home</a> </div> <div class='clear'></div> </div></div> </div> <!-- /content --> <div id='sidebar_right'> <div class='block right rss_search'> <div class='sidebar-right section' id='sidebar-right10'><div class='widget HTML' data-version='1' id='HTML1'> <h2 class='title'>TRANSLATE THIS BLOG</h2> <div class='widget-content'> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="English" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Cen&hl=en'); return false;"><img border="0" alt="English" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqYxzc2jWF-fLUa1LNia2ZTw7TP89p7b_t_oaaHoEYs5Ry8C37ljN4FWbTXihA82MiWyRXNijb31F0wZqLfq4Qw43DP_W4eLdMl-cITsvyqllc1Pvee7JqmpMosQdcd_C3eUu8iT8Jtqg/s320/english.jpeg" height="30" title="English" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="French" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Cfr&hl=en'); return false;"><img border="0" alt="French" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiB8xCpDV1304zeMFZcoaQ9fQWx8X9K6_BuiDcnLmUmVDksafv9nsLOTGdVF-HGbceYFRIdnMw-s0Lp3gGSuXmeh7rMj5gvZ5ciKJIvIE7Ag3ikwz-L7ecx1Xmm8sOvV1i3Gj5syMTJTdg/s320/french.jpg" height="30" title="French" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="German" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Cde&hl=en'); return false;"><img border="0" alt="German" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9ndk1lWvi4cC7GepX2uDrs6lRlIEHC-TtZgyVPhWLnbeCh8iYG3wePWRN9M3id2bP9aQBIcon9qzG4IZpZ5cZDNRkvgW48U28-gh7prku-HpgvG9Wvmv7c3tD0N9f3U2EuCyuly62p-M/s320/german.jpg" height="30" title="German" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="Spain" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Ces&hl=en'); return false;"><img border="0" alt="Spain" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrmlef1w5hpTKsX1FUH2SBfJpoEv7Yz0rDGExSvax-gzrGRQOM9mZSFzhFJY6crM8nTkSG1gD_Rl0W1UoXQamADNjvKJKkYuqS2MfuS50TsXQtOUz3Eag5QNO0EZxo6uVGpi-dDC6zcns/s320/spanish.jpg" height="30" title="Spain" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="Italian" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Cit&hl=en'); return false;"><img border="0" alt="Italian" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWdsgTJP9iNay51cp_2hYg0hTwG-Ud0JWTscj7nkIRvqoS6t_qk_38YBgcinoLB_RMaa6KHP6iSW3KO0nIog00ReN1bNtPTe9RA3_9blfj_jkczRRXRkweD-lblH0ngRVpUd-_OAlK71Q/s320/italian.jpg" height="30" title="Italian" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="Dutch" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Cnl&hl=en'); return false;"><img border="0" alt="Dutch" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyaJNrzitNE-afLKv2ePO-axZMFCkth8qY8T6eJ4Ff8ISqEx6FW1d7HFFIMtEs3LUaoCp0r8dqGRKXai_DfiiNzxUDm0YlPASg32_mgi4GdDRd2VXtoYdr8ql2wZCTUHNpVnylO-NF_ZA/s320/dutch.jpeg" height="30" title="Dutch" align="absbottom"/></a><br/><br/><a style="cursor: pointer;" target="_blank" rel="nofollow" title="Russian" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Cru&hl=en'); return false;"><img border="0" alt="Russian" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggt6D7-LGx9wkrSWk1ivljkmTd3R9IabK7n7QM1aVb92A0K_WUS2bDTqQ3y5kW4tBGOJe_tgmQFDNDIpg5ys6Hpbj_hEJEqCY671_dNOQUyvsDtpdjjaI8QbtmWut_mNVgU-NQLk8fXQ8/s320/russian.jpeg" height="30" title="Russian" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="Portuguese" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Cpt&hl=en'); return false;"><img border="0" alt="Portuguese" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidt_LXAB-Tq3tSTaPS6AKnobn8zYPnsdSb0N6JW5GN4s3s_M9ytMDB0-KfursohiHFCYH90FMk3VsrwSjnDG9m8Dwv0mA0WEohgmkgMfU3xkUn8nGdEXjyuPOO1CTKzv6dGy0p04bD0zk/s320/brazilian.jpg" height="30" title="Portuguese" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="Japanese" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Cja&hl=en'); return false;"><img border="0" alt="Japanese" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2epsRMZfRgohN1MqTmO84NL77fuHgM1zUEOd1lI49DvRnRmmAYqdfEN8PWWPRuryjqH7HDsHJqQeDCbd8mGjdzrmp5NLaR74G1gGTuACFV9GyaoqYxA5b-GPWaH9qrLd4znUhaJUIQOk/s320/japan.jpg" height="30" title="Japanese" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="Korean" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Cko&hl=en'); return false;"><img border="0" alt="Korean" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTGA4eH_GGiRyXajjB4JcS8mgcltbmqESuz24a5DSDKdlRXfI6CKCKly1Lo1lTnWsZHuS9-wh2IrS1qhUGwQ_pDqLViloYNFMZbypRfCBesjCDnqBU1zjIMJsy5Gsd1d0QdYAEpUsT9Co/s320/korean.jpg" height="30" title="Korean" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="Arabic" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Car&hl=en'); return false;"><img border="0" alt="Arabic" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaYs2H5FQvtaYQI2_SIgrofncWM_OYJhiU42p920RKh-KrYvy6e9JHn1mufHRU1WpW078BFyVE1kja2vLIM8Y8gSlOX4NWoeF8FVCOYGBZ7ivvi9Z9fKThl96hdZfvNk2DYpD0kNT5zp8/s320/arab.jpeg" height="30" title="Arabic" align="absbottom"/></a> <a style="cursor: pointer;" target="_blank" rel="nofollow" title="Chinese Simplified" onclick="window.open('http://translate.google.com/translate?u='+encodeURIComponent(location.href)+'&langpair=id%7Czh-CN&hl=en'); return false;"><img border="0" alt="Chinese Simplified" style="cursor: pointer;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgqK0XttXZaT8hJ6jfqgzMhpR420aMGE_rocTHIZgflvGYkBWLyTRlUmcrW4X26SHatrjRqKENiGrhCvzM3oaM8lBYbKNpA8qMRA9jmLVTzIUE_jELEsrwQ1-GbrGYe_V5DISqrImJXYo/s320/china.jpg" height="30" title="Chinese Simplified" align="absbottom"/></a><br/><br/><span style="font-size: 80%"></span> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML12'> <h2 class='title'>check pagerank</h2> <div class='widget-content'> <table border="0" cellspacing="1" cellpadding="5" bgcolor="#C0C0C0" align="center"> <form action="http://www.prchecker.info/check_page_rank.php" target="_blank" method="post"> <tr bgcolor="#ffffff"><td><input value="docheck" name="action" type="hidden"/> <input maxlength="300" value="http://" name="urlo" size="31" type="text"/> <input value=" Check PR " name="do_it_now" type="submit"/> </td></tr></form><tr bgcolor="#ffffff"><td></td></tr></table> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML9'> <div class='widget-content'> <iframe align="middle" frameborder="0" marginheight="0" marginwidth="0" height="250" src="http://banners.friendfinder.com/go/page/banner_24368?size=300x250&ad=001&pid=g1109325-pmem&no_click=1〈=english&page=reg" scrolling="no" width="300"></iframe> </div> <div class='clear'></div> </div><div class='widget Label' data-version='1' id='Label99'> <h2>Labels</h2> <div class='widget-content'> <script src='http://halotemplates.s3.amazonaws.com/wp-cumulus-example/swfobject.js' type='text/javascript'></script> <div id='flashcontent'>Blogumulus by <a href='http://www.roytanck.com/'>Roy Tanck</a> and <a href='http://www.bloggerbuster.com'>Amanda Fazani</a></div> <script type='text/javascript'> var so = new SWFObject("http://halotemplates.s3.amazonaws.com/wp-cumulus-example/tagcloud.swf", "tagcloud", "240", "300", "7", "#ffffff"); // uncomment next line to enable transparency //so.addParam("wmode", "transparent"); so.addVariable("tcolor", "0x333333"); so.addVariable("mode", "tags"); so.addVariable("distr", "true"); so.addVariable("tspeed", "100"); so.addVariable("tagcloud", "<tags><a href='http://blogerdesign.blogspot.com/search/label/3ds%20MAX' style='12'>3ds MAX</a><a href='http://blogerdesign.blogspot.com/search/label/3gp' style='12'>3gp</a><a href='http://blogerdesign.blogspot.com/search/label/Animations' style='12'>Animations</a><a href='http://blogerdesign.blogspot.com/search/label/Busines' style='12'>Busines</a><a href='http://blogerdesign.blogspot.com/search/label/Corel%20Draw' style='12'>Corel Draw</a><a href='http://blogerdesign.blogspot.com/search/label/Design' style='12'>Design</a><a href='http://blogerdesign.blogspot.com/search/label/DRAWING' style='12'>DRAWING</a><a href='http://blogerdesign.blogspot.com/search/label/Games' style='12'>Games</a><a href='http://blogerdesign.blogspot.com/search/label/General%2FBasics' style='12'>General/Basics</a><a href='http://blogerdesign.blogspot.com/search/label/LAYOUT' style='12'>LAYOUT</a><a href='http://blogerdesign.blogspot.com/search/label/Photo%20Effects' style='12'>Photo Effects</a><a href='http://blogerdesign.blogspot.com/search/label/Photo%20Manipulation' style='12'>Photo Manipulation</a><a href='http://blogerdesign.blogspot.com/search/label/Photoshop' style='12'>Photoshop</a><a href='http://blogerdesign.blogspot.com/search/label/Php' style='12'>Php</a><a href='http://blogerdesign.blogspot.com/search/label/Programming' style='12'>Programming</a><a href='http://blogerdesign.blogspot.com/search/label/Software' style='12'>Software</a><a href='http://blogerdesign.blogspot.com/search/label/Special%20Effects' style='12'>Special Effects</a><a href='http://blogerdesign.blogspot.com/search/label/TECHNICAL' style='12'>TECHNICAL</a><a href='http://blogerdesign.blogspot.com/search/label/Text%20Effects' style='12'>Text Effects</a></tags>"); so.addParam("allowScriptAccess", "always"); so.write("flashcontent"); </script> <div class='clear'></div> </div> </div><div class='widget HTML' data-version='1' id='HTML6'> <div class='widget-content'> <script type="text/javascript"><!-- google_ad_client = "pub-5214706474963894"; google_ad_host = "pub-1556223355139109"; google_ad_host_channel="00000"; /* 250x250, created 6/26/09 */ google_ad_slot = "6129593068"; google_ad_width = 250; google_ad_height = 250; //--> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML3'> <h2 class='title'>Visit Indonesia Year 2008</h2> <div class='widget-content'> <center><a href="http://my-indonesia.info/"><img alt="Visit Indonesia Year 2008" src="http://i301.photobucket.com/albums/nn78/btakeshy/visit_indonesia_2008.gif"/></a></center> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML11'> <h2 class='title'>Articles</h2> <div class='widget-content'> <script src="http://anas.ku93.googlepages.com/post-terakhir.js"></script> <script>var numposts = 40; var showpostdate = false; var showpostsummary = false; var numchars = 100; </script> <script src="http://blogerdesign.blogspot.com/feeds/posts/default?orderby=published&alt=json-in-script&callback=rp"> </script> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML10'> <h2 class='title'>Chat</h2> <div class='widget-content'> <!-- Begin ShoutMix - http://www.shoutmix.com --> <iframe scrolling="auto" width="300" frameborder="0" src="http://www5.shoutmix.com/?tobor212" height="450" title="tobor212"> <a href="http://www5.shoutmix.com/?tobor212">View shoutbox</a> </iframe> <br/><a href="http://www.shoutmix.com" title="Get your own free shoutbox chat widget at ShoutMix!"></a> <!-- End ShoutMix --> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML13'> <h2 class='title'>Recent Coment</h2> <div class='widget-content'> <script style="text/javascript" src="http://www.geocities.com/oom_directory/recentcomments.txt"></script><script style="text/javascript">var numcomments = 5;var showcommentdate = true;var showposttitle = true;var numchars = 100;var standardstyling = true;</script><script src="http://blogerdesign.blogspot.com/feeds/comments/default?alt=json-in-script&callback=showrecentcomments"></script> </div> <div class='clear'></div> </div></div> </div> <div class='block right'> <div class='sidebar-right no-items section' id='sidebar-right2'></div> </div> <div class='block right'> <div class='sidebar-right no-items section' id='sidebar-right7'> </div> </div> <div class='block right'> <div class='sidebar-right no-items section' id='sidebar-right3'></div> </div> <div class='block right'> <div class='sidebar-right no-items section' id='sidebar-right4'> </div> </div> </div> <!-- /sidebar right --> <div class='c'></div> </div> <!-- /main --> <!-- Maggo magazine Blogger Template comes under a Creative Commons License. This means it is free to use on your blog as long as the credit link in the footer is kept intact ThemeLib.com --> <div id='footer'> <span class='left'>Copyright 2008 <strong><a href='http://blogerdesign.blogspot.com/'>BlogDesign</a></strong></span> <span class='right'>Theme <a alt='WordPress Designer' href='http://blogerdesign.blogspot.com'> Theme Designer</a> | Converted to <a href='http://blogerdesign.blogspot.com/2008/07/maggo-magazine-blogger-template/'>Blogger Template</a> by <a href='http://blogerdesign.blogspot.com' title='ThemeLib - Unique Blogger Templates'>blogerdesign</a></span> </div> </div> <!-- /wrap --> <script type="text/javascript" src="https://www.blogger.com/static/v1/widgets/2112189061-widgets.js"></script> <script type='text/javascript'> window['__wavt'] = 'AOuZoY4TQl69BmSZLLPZgNhIDbeNmg7plw:1756982608187';_WidgetManager._Init('//www.blogger.com/rearrange?blogID\x3d3015585304565072082','//blogerdesign.blogspot.com/search?updated-max\x3d2009-01-05T06:40:00-08:00\x26max-results\x3d10\x26reverse-paginate\x3dtrue','3015585304565072082'); _WidgetManager._SetDataContext([{'name': 'blog', 'data': {'blogId': '3015585304565072082', 'title': 'BlogDesign', 'url': 'http://blogerdesign.blogspot.com/search?updated-max\x3d2009-01-05T06:40:00-08:00\x26max-results\x3d10\x26reverse-paginate\x3dtrue', 'canonicalUrl': 'http://blogerdesign.blogspot.com/search?updated-max\x3d2009-01-05T06:40:00-08:00\x26max-results\x3d10\x26reverse-paginate\x3dtrue', 'homepageUrl': 'http://blogerdesign.blogspot.com/', 'searchUrl': 'http://blogerdesign.blogspot.com/search', 'canonicalHomepageUrl': 'http://blogerdesign.blogspot.com/', 'blogspotFaviconUrl': 'http://blogerdesign.blogspot.com/favicon.ico', 'bloggerUrl': 'https://www.blogger.com', 'hasCustomDomain': false, 'httpsEnabled': true, 'enabledCommentProfileImages': true, 'gPlusViewType': 'FILTERED_POSTMOD', 'adultContent': false, 'analyticsAccountNumber': '', 'encoding': 'UTF-8', 'locale': 'en', 'localeUnderscoreDelimited': 'en', 'languageDirection': 'ltr', 'isPrivate': false, 'isMobile': false, 'isMobileRequest': false, 'mobileClass': '', 'isPrivateBlog': false, 'isDynamicViewsAvailable': true, 'feedLinks': '\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22BlogDesign - Atom\x22 href\x3d\x22http://blogerdesign.blogspot.com/feeds/posts/default\x22 /\x3e\n\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/rss+xml\x22 title\x3d\x22BlogDesign - RSS\x22 href\x3d\x22http://blogerdesign.blogspot.com/feeds/posts/default?alt\x3drss\x22 /\x3e\n\x3clink rel\x3d\x22service.post\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22BlogDesign - Atom\x22 href\x3d\x22https://www.blogger.com/feeds/3015585304565072082/posts/default\x22 /\x3e\n', 'meTag': '\x3clink rel\x3d\x22me\x22 href\x3d\x22https://www.blogger.com/profile/05856586769477872714\x22 /\x3e\n', 'adsenseClientId': 'ca-pub-5214706474963894', 'adsenseHostId': 'ca-host-pub-1556223355139109', 'adsenseHasAds': false, 'adsenseAutoAds': false, 'boqCommentIframeForm': true, 'loginRedirectParam': '', 'view': '', 'dynamicViewsCommentsSrc': '//www.blogblog.com/dynamicviews/4224c15c4e7c9321/js/comments.js', 'dynamicViewsScriptSrc': '//www.blogblog.com/dynamicviews/8fe2b7164d49551f', 'plusOneApiSrc': 'https://apis.google.com/js/platform.js', 'disableGComments': true, 'interstitialAccepted': false, 'sharing': {'platforms': [{'name': 'Get link', 'key': 'link', 'shareMessage': 'Get link', 'target': ''}, {'name': 'Facebook', 'key': 'facebook', 'shareMessage': 'Share to Facebook', 'target': 'facebook'}, {'name': 'BlogThis!', 'key': 'blogThis', 'shareMessage': 'BlogThis!', 'target': 'blog'}, {'name': 'X', 'key': 'twitter', 'shareMessage': 'Share to X', 'target': 'twitter'}, {'name': 'Pinterest', 'key': 'pinterest', 'shareMessage': 'Share to Pinterest', 'target': 'pinterest'}, {'name': 'Email', 'key': 'email', 'shareMessage': 'Email', 'target': 'email'}], 'disableGooglePlus': true, 'googlePlusShareButtonWidth': 0, 'googlePlusBootstrap': '\x3cscript type\x3d\x22text/javascript\x22\x3ewindow.___gcfg \x3d {\x27lang\x27: \x27en\x27};\x3c/script\x3e'}, 'hasCustomJumpLinkMessage': false, 'jumpLinkMessage': 'Read more', 'pageType': 'index', 'pageName': '', 'pageTitle': 'BlogDesign'}}, {'name': 'features', 'data': {}}, {'name': 'messages', 'data': {'edit': 'Edit', 'linkCopiedToClipboard': 'Link copied to clipboard!', 'ok': 'Ok', 'postLink': 'Post Link'}}, {'name': 'template', 'data': {'name': 'custom', 'localizedName': 'Custom', 'isResponsive': false, 'isAlternateRendering': false, 'isCustom': true}}, {'name': 'view', 'data': {'classic': {'name': 'classic', 'url': '?view\x3dclassic'}, 'flipcard': {'name': 'flipcard', 'url': '?view\x3dflipcard'}, 'magazine': {'name': 'magazine', 'url': '?view\x3dmagazine'}, 'mosaic': {'name': 'mosaic', 'url': '?view\x3dmosaic'}, 'sidebar': {'name': 'sidebar', 'url': '?view\x3dsidebar'}, 'snapshot': {'name': 'snapshot', 'url': '?view\x3dsnapshot'}, 'timeslide': {'name': 'timeslide', 'url': '?view\x3dtimeslide'}, 'isMobile': false, 'title': 'BlogDesign', 'description': '', 'url': 'http://blogerdesign.blogspot.com/search?updated-max\x3d2009-01-05T06:40:00-08:00\x26max-results\x3d10\x26reverse-paginate\x3dtrue', 'type': 'feed', 'isSingleItem': false, 'isMultipleItems': true, 'isError': false, 'isPage': false, 'isPost': false, 'isHomepage': false, 'isArchive': false, 'isSearch': true, 'isLabelSearch': false, 'search': {}}}]); _WidgetManager._RegisterWidget('_NavbarView', new _WidgetInfo('Navbar1', 'navbar', document.getElementById('Navbar1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML8', 'topcolumn', document.getElementById('HTML8'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML2', 'sidebar-left', document.getElementById('HTML2'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_LabelView', new _WidgetInfo('Label1', 'sidebar-left', document.getElementById('Label1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML7', 'sidebar-left', document.getElementById('HTML7'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML5', 'sidebar-left4', document.getElementById('HTML5'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogArchiveView', new _WidgetInfo('BlogArchive2', 'sidebar-left4', document.getElementById('BlogArchive2'), {'languageDirection': 'ltr', 'loadingMessage': 'Loading\x26hellip;'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_LinkListView', new _WidgetInfo('LinkList1', 'sidebar-left3', document.getElementById('LinkList1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML4', 'sidebar-left3', document.getElementById('HTML4'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogView', new _WidgetInfo('Blog1', 'themelib', document.getElementById('Blog1'), {'cmtInteractionsEnabled': false, 'lightboxEnabled': true, 'lightboxModuleUrl': 'https://www.blogger.com/static/v1/jsbin/3944273060-lbx.js', 'lightboxCssUrl': 'https://www.blogger.com/static/v1/v-css/123180807-lightbox_bundle.css'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML1', 'sidebar-right10', document.getElementById('HTML1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML12', 'sidebar-right10', document.getElementById('HTML12'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML9', 'sidebar-right10', document.getElementById('HTML9'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_LabelView', new _WidgetInfo('Label99', 'sidebar-right10', document.getElementById('Label99'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML6', 'sidebar-right10', document.getElementById('HTML6'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML3', 'sidebar-right10', document.getElementById('HTML3'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML11', 'sidebar-right10', document.getElementById('HTML11'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML10', 'sidebar-right10', document.getElementById('HTML10'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML13', 'sidebar-right10', document.getElementById('HTML13'), {}, 'displayModeFull')); </script> </body> </html>