Система за online пазаруване – Част 1-ва
Автор: SandPrince
Започвам един бая дълъг урок за създаване на простичка система за онлайн пазаруване. нямам представа в колко части ще бъде урока , но до няколко дни урока ще е готов напълно.Сега да започнем първата част.
Започваме със създаването на няколко таблици в БД
tbl_cart
CREATE TABLE `tbl_cart` (
`ct_id` int(10) unsigned NOT NULL auto_increment,
`pd_id` int(10) unsigned NOT NULL default '0',
`ct_qty` mediumint(8) unsigned NOT NULL default '1',
`ct_session_id` char(32) NOT NULL default '',
`ct_date` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`ct_id`),
KEY `pd_id` (`pd_id`),
KEY `ct_session_id` (`ct_session_id`)
) TYPE=MyISAM AUTO_INCREMENT=58 ;tbl_category
CREATE TABLE `tbl_category` (
`cat_id` int(10) unsigned NOT NULL auto_increment,
`cat_parent_id` int(11) NOT NULL default '0',
`cat_name` varchar(50) NOT NULL default '',
`cat_description` varchar(200) NOT NULL default '',
`cat_image` varchar(255) NOT NULL default '',
PRIMARY KEY (`cat_id`),
KEY `cat_parent_id` (`cat_parent_id`),
KEY `cat_name` (`cat_name`)
) TYPE=MyISAM AUTO_INCREMENT=18 ;tbl_currency
CREATE TABLE `tbl_currency` (
`cy_id` int(10) unsigned NOT NULL auto_increment,
`cy_code` char(3) NOT NULL default '',
`cy_symbol` varchar(8) NOT NULL default '',
PRIMARY KEY (`cy_id`)
) TYPE=MyISAM AUTO_INCREMENT=5 ;tbl_order
CREATE TABLE `tbl_order` (
`od_id` int(10) unsigned NOT NULL auto_increment,
`od_date` datetime default NULL,
`od_last_update` datetime NOT NULL default '0000-00-00 00:00:00',
`od_status` enum('New', 'Paid', 'Shipped','Completed','Cancelled') NOT NULL default 'New',
`od_memo` varchar(255) NOT NULL default '',
`od_shipping_first_name` varchar(50) NOT NULL default '',
`od_shipping_last_name` varchar(50) NOT NULL default '',
`od_shipping_address1` varchar(100) NOT NULL default '',
`od_shipping_address2` varchar(100) NOT NULL default '',
`od_shipping_phone` varchar(32) NOT NULL default '',
`od_shipping_city` varchar(100) NOT NULL default '',
`od_shipping_state` varchar(32) NOT NULL default '',
`od_shipping_postal_code` varchar(10) NOT NULL default '',
`od_shipping_cost` decimal(5,2) default '0.00',
`od_payment_first_name` varchar(50) NOT NULL default '',
`od_payment_last_name` varchar(50) NOT NULL default '',
`od_payment_address1` varchar(100) NOT NULL default '',
`od_payment_address2` varchar(100) NOT NULL default '',
`od_payment_phone` varchar(32) NOT NULL default '',
`od_payment_city` varchar(100) NOT NULL default '',
`od_payment_state` varchar(32) NOT NULL default '',
`od_payment_postal_code` varchar(10) NOT NULL default '',
PRIMARY KEY (`od_id`)
) TYPE=MyISAM AUTO_INCREMENT=1001 ;tbl_order_item
CREATE TABLE `tbl_order_item` (
`od_id` int(10) unsigned NOT NULL default '0',
`pd_id` int(10) unsigned NOT NULL default '0',
`od_qty` int(10) unsigned NOT NULL default '0',
PRIMARY KEY (`od_id`,`pd_id`)
) TYPE=MyISAM;tbl_product
CREATE TABLE `tbl_product` (
`pd_id` int(10) unsigned NOT NULL auto_increment,
`cat_id` int(10) unsigned NOT NULL default '0',
`pd_name` varchar(100) NOT NULL default '',
`pd_description` text NOT NULL,
`pd_price` decimal(9,2) NOT NULL default '0.00',
`pd_qty` smallint(5) unsigned NOT NULL default '0',
`pd_image` varchar(200) default NULL,
`pd_thumbnail` varchar(200) default NULL,
`pd_date` datetime NOT NULL default '0000-00-00 00:00:00',
`pd_last_update` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`pd_id`),
KEY `cat_id` (`cat_id`),
KEY `pd_name` (`pd_name`)
) TYPE=MyISAM AUTO_INCREMENT=22 ;tbl_shop_config
CREATE TABLE `tbl_shop_config` (
`sc_name` varchar(50) NOT NULL default '',
`sc_address` varchar(100) NOT NULL default '',
`sc_phone` varchar(30) NOT NULL default '',
`sc_email` varchar(30) NOT NULL default '',
`sc_shipping_cost` decimal(5,2) NOT NULL default '0.00',
`sc_currency` int(10) unsigned NOT NULL default '1',
`sc_order_email` enum('y','n') NOT NULL default 'n'
) TYPE=MyISAM;tbl_user
CREATE TABLE `tbl_user` (
`user_id` int(10) unsigned NOT NULL auto_increment,
`user_name` varchar(20) NOT NULL default '',
`user_password` varchar(32) NOT NULL default '',
`user_regdate` datetime NOT NULL default '0000-00-00 00:00:00',
`user_last_login` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`user_id`),
UNIQUE KEY `user_name` (`user_name`)
) TYPE=MyISAM AUTO_INCREMENT=4 ;До тук добре! Част първа на този урок ще бъде само за таблиците. В следващия урок ще създадем още няколко файла – index.php , cart.php , chekout.php , error.php и success.php


