Dream House

Courage to do something…

Date control using JavaScript

Posted by Mohammad Sajjad Hossain on March 13th, 2008

Date control is a combination of three drop downs with month, day and year valus. It can be used as an alternative to the date picker control. Suppose a user needs to select a date before/after 10 years. At this point selecting the date with a date picker will not be easy and time consuming. So, in this situation, this control may be helpful.

Date control

To customize you need you can configure it. Change the properties in date_control.js file.

How to use it?

1. Unzip the download
2. Link the date_control to the page you want to use it in.
3. Write this code where you want to place the control

<script language="javascript">
// getting the date control
getDateControl("name_of_the_field", "name_of_the_form");
</script>

For more details see the demo.html file included in the download.

I have tested the code with Internet Explorer 6 and FireFox 2.X.X and it works fine.

You can download a copy from here: Download

Share/Save/Bookmark

Posted in JavaScript, My Works | No Comments »

Paging using PHP and MySQL

Posted by Mohammad Sajjad Hossain on March 9th, 2008

I have coded a class for paging, you may find it here.

### Code for Paging Starts ###
//index no of the page
$pageIndex = ((int)$_REQUEST['pageIndex'] == 0) ? 1 : (int)$_REQUEST['pageIndex'];
 
//number of rows
$rowPerPage = 10;
 
//counting total number of rows
$sql = 'SELECT COUNT(*)
        FROM {your_table_name}
        WHERE {IF ANY CONDITION}';
 
$query = mysql_query($sql, $link_identifier);
$row = mysql_fetch_row($query);
 
// total records
$totalRecords = $row[0];
 
// number of pages
$totalPages = ceil($totalRecords/$rowPerPage);
 
if($pageIndex > $totalPages)
{
    $pageIndex = $totalPages;
}
 
$startIndex = ($pageIndex - 1) * $rowPerPage;
 
if($totalRecords > $rowPerPage)
{
    $endIndex = $startIndex + $rowPerPage;
}
else
{
    $endIndex = $totalRecords;
}
 
if($pageIndex == $totalPages)
{
    if($totalRecords > $totalPages * $rowPerPage)
    {
        $endIndex = $totalRecords;
    }
}
 
if($totalRecords > 0)
{
    $rangeStart = $startIndex+1;
 
    if(($totalRecords > $rowPerPage) || ($pageIndex == $totalPages))
    {
        $rangeEnd = $totalRecords;
    }
    else
    {
        $rangeEnd = $endIndex;
    }
 
    $range = 'Showing '  . $rangeStart.' - '.$rangeEnd.' of '.$totalRecords;
}
 
// link for next page
$nextLink = 'page_name.php?pageIndex='.($pageIndex - 1);
 
// link for previous page
$previousLink = 'page_name.php?pageIndex='.($pageIndex - 1);
 
// fetching data using pagination
$sql = "SELECT *
            FROM {your_table_name}
            WHERE {IF ANY CONDITION}
            LIMIT $startIndex, $rowPerPage";
 
$query = mysql_query($sql, $link_identifier);
 
### Code for Paging Ends ###

Now use the resource ‘$query’ and do what you want to do.

Share/Save/Bookmark

Posted in PHP | 1 Comment »

Regular Expression Patterns

Posted by Mohammad Sajjad Hossain on February 27th, 2008

From various sources I have collected the following regular expression patterns. They helped me a lot in front-end and back-end validation.

Alpha:

Pattern: ^[a-zA-Z_ ]+$
Description: Allows only ‘A-Z’, ‘a-z’, space ( ‘ ‘ ) and underscore ( ‘_’).

Alphanumeric:

Pattern: ^[a-zA-Z0-9_ ]+$
Description: Allows only ‘A-Z’, ‘a-z’, ‘0-9′, space ( ‘ ‘ ) and underscore ( ‘_’).

Email:

Pattern: /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i

Numeric:

Pattern: ^\d+$

Decimal:

Pattern: ^\d+(?:\.\d{0,2})?$

Date - 1:

Pattern: ^(0[1-9]|[1,2][0-9]|3[0-1])-(0[1-9]|1[0,1,2])-\d{4}$
Description: Date format DD-MM-YYYY

Date - 2:

Pattern: ^(0[1-9]|1[0,1,2])-(0[1-9]|[1,2][0-9]|3[0-1])-\d{4}$
Description: Date format MM-DD-YYYY

US Zip Code:

Pattern: ^\d{5}$

US Telephone Number:

Pattern: ^1?[\-]?\(?\d{3}\)?[\-]?\d{3}[\-]?\d{4}$

Color Code:

Pattern: ^#{1}?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$

Share/Save/Bookmark

Posted in Regular Expression | 5 Comments »

FS Snake & Lader 1.0

Posted by Mohammad Sajjad Hossain on February 25th, 2008

MSH Relation Calculator

This game is based on a paper game, Snake and Ladder. You may have played this game before. I have added nothing more. I have just programmed it for my nephews and nieces. They give me the inspiration for designing and programming this game. Hope you will like it.

Click this link if you want to download it Download

Share/Save/Bookmark

Posted in Games, My Works | No Comments »

MSH Mini Puzzle Game 1.0

Posted by Mohammad Sajjad Hossain on February 25th, 2008

MSH Mini Puzzle Game 1.0

This is a puzzle game and it is freeware. You can freely distribute to your friends. It is mainly developed for children and for the beginners of computer operation. This will help them to improve their mouse movement. But anyone can play it and have fun. It is the first edition of the game. In this edition I have included 5 pictures’ puzzle. Hope you will enjoy the game.

To download a copy of the game click here Download

Share/Save/Bookmark

Posted in Games, My Works | No Comments »