汽車(chē)零售銷(xiāo)售網(wǎng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
汽車(chē)零售銷(xiāo)售網(wǎng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
汽車(chē)零售銷(xiāo)售網(wǎng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
汽車(chē)零售銷(xiāo)售網(wǎng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
汽車(chē)零售銷(xiāo)售網(wǎng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩63頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

i第5章系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)5.1系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)概要數(shù)據(jù)庫(kù)為什么要設(shè)計(jì)?設(shè)計(jì)是為了讓整個(gè)項(xiàng)目的結(jié)構(gòu)更具穩(wěn)定性,代碼能更輕松;數(shù)據(jù)庫(kù)的設(shè)計(jì)就像造一座房子,有水泥、鋼筋、磚,我們可以根據(jù)自己的喜歡隨意設(shè)計(jì)么?肯定也是能的,但是你能保證你的任意妄為不會(huì)給之后的使用帶來(lái)安全隱患么?搭建數(shù)據(jù)庫(kù)也是一樣,需要在之前經(jīng)過(guò)深思熟慮后的思考再動(dòng)手。利用數(shù)據(jù)庫(kù)設(shè)計(jì)可以將網(wǎng)站管理系統(tǒng)的作用充分發(fā)揮[5]。在利用數(shù)據(jù)庫(kù)設(shè)計(jì)對(duì)網(wǎng)站進(jìn)行管理的過(guò)程中,可提升各方面信息資源的準(zhǔn)確性,無(wú)論是各個(gè)行業(yè)領(lǐng)域的網(wǎng)站開(kāi)發(fā),都可利用數(shù)據(jù)庫(kù)設(shè)計(jì)提供的數(shù)據(jù)信息支持提升運(yùn)行水平。利用數(shù)據(jù)庫(kù)設(shè)計(jì)可以確保網(wǎng)站管理系統(tǒng)的運(yùn)行穩(wěn)定性、運(yùn)行環(huán)境安全性、運(yùn)行效率高效性[12]。當(dāng)數(shù)據(jù)庫(kù)里的數(shù)據(jù)比較復(fù)雜的時(shí)候,一個(gè)良好的數(shù)據(jù)設(shè)計(jì)就能節(jié)省數(shù)據(jù)的存儲(chǔ)空間;保證數(shù)據(jù)的完整性;更重要的是能使開(kāi)發(fā)程序的實(shí)現(xiàn)變得簡(jiǎn)單。SpringShop系統(tǒng)總共涉及數(shù)據(jù)表7張,分別是用戶(hù)表、商品表,商品類(lèi)別表,訂單表,系統(tǒng)用戶(hù)關(guān)系表,購(gòu)物車(chē)表,后臺(tái)員工留言表等?;咀龅矫總€(gè)模塊都有其對(duì)應(yīng)的管理表。每張表都設(shè)有主鍵,每個(gè)字段都經(jīng)過(guò)考慮選擇合適的字段類(lèi)型、字段長(zhǎng)度等,用來(lái)提高表與表之間的聯(lián)系和數(shù)據(jù)的關(guān)聯(lián)性。數(shù)據(jù)庫(kù)的設(shè)計(jì)可以通過(guò)ER圖來(lái)展現(xiàn)數(shù)據(jù)庫(kù)E-R圖:圖4-2SpringShop管理系統(tǒng)ER圖在一般的系統(tǒng)中,經(jīng)常會(huì)使用到兩表或多表間有密切聯(lián)系。通過(guò)主鍵、外鍵進(jìn)行表表相連。本系統(tǒng)有使用到“二級(jí)聯(lián)動(dòng)”設(shè)計(jì)。二級(jí)聯(lián)動(dòng)數(shù)據(jù)表的設(shè)計(jì):表4-3 商品管理表表4-4 商品類(lèi)別表這兩張表存在關(guān)聯(lián)關(guān)系,是屬于關(guān)聯(lián)表。一對(duì)多,即一個(gè)類(lèi)別可對(duì)應(yīng)多個(gè)商品。商品表的是主表,類(lèi)別表是外表。商品表的category_id外鍵對(duì)應(yīng)類(lèi)別表的主鍵id,從而是兩表間具有關(guān)聯(lián)條件。所謂二級(jí)聯(lián)動(dòng),就是選定某個(gè)具體的類(lèi)別,會(huì)得到該類(lèi)別下的所有商品。不同類(lèi)別擁有不相同的商品數(shù)據(jù)。聯(lián)動(dòng)的設(shè)計(jì)簡(jiǎn)化了用戶(hù)的選擇操作,不用從一大堆雜亂無(wú)章的商品中去尋找自己感興趣的商品,通過(guò)類(lèi)別篩選可以更快速的定位到自己想找的商品,這種設(shè)計(jì)使得數(shù)據(jù)庫(kù)結(jié)構(gòu)上更穩(wěn)定簡(jiǎn)單,從而提高數(shù)據(jù)庫(kù)的可維護(hù)性。5.2數(shù)據(jù)庫(kù)詳細(xì)設(shè)計(jì)5.2.1數(shù)據(jù)庫(kù)總體設(shè)計(jì)圖5-1 SpringShop系統(tǒng)數(shù)據(jù)庫(kù)-所有表信息1SpringShop系統(tǒng)數(shù)據(jù)庫(kù)-具體單表的信息匯總:數(shù)據(jù)表名功能字段數(shù)c_user用戶(hù)基本信息記錄表11c_admin系統(tǒng)管理員記錄表10c_category商品分類(lèi)表7c_part商品信息表12c_message留言信息表6c_cart購(gòu)物車(chē)表6c_order訂單信息表115.2.2數(shù)據(jù)庫(kù)表詳細(xì)設(shè)計(jì)上述說(shuō)明了該系統(tǒng)使用的所有表及其字段的數(shù)目,下面介紹具體每張表的結(jié)構(gòu)信息。管理員表建表信息:--

--Tablestructureforc_admin

--

DROPTABLEIFEXISTS`c_admin`;

CREATETABLE`c_admin`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`username`varchar(50)NOTNULLDEFAULT'',

`email`varchar(60)CHARACTERSETutf8NOTNULLDEFAULT''COMMENT'賬號(hào)',

`password`varchar(255)CHARACTERSETutf8NOTNULLDEFAULT'',

`avatar`varchar(255)NOTNULLDEFAULT'',

`phone`char(15)NOTNULLDEFAULT'',

`status`tinyint(2)unsignedNOTNULLDEFAULT'1',

`last_login_time`int(10)unsignedNOTNULLDEFAULT'0',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=4DEFAULTCHARSET=utf8mb4COMMENT='管理員表';圖5-2--

--Tablestructureforc_admin

--

DROPTABLEIFEXISTS`c_admin`;

CREATETABLE`c_admin`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`username`varchar(50)NOTNULLDEFAULT'',

`email`varchar(60)CHARACTERSETutf8NOTNULLDEFAULT''COMMENT'賬號(hào)',

`password`varchar(255)CHARACTERSETutf8NOTNULLDEFAULT'',

`avatar`varchar(255)NOTNULLDEFAULT'',

`phone`char(15)NOTNULLDEFAULT'',

`status`tinyint(2)unsignedNOTNULLDEFAULT'1',

`last_login_time`int(10)unsignedNOTNULLDEFAULT'0',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=4DEFAULTCHARSET=utf8mb4COMMENT='管理員表';商品類(lèi)別表建表信息:--Tablestructureforc_category

--

DROPTABLEIFEXISTS`c_category`;

CREATETABLE`c_category`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`pid`int(10)unsignedNOTNULLDEFAULT'1',

`category_name`varchar(50)CHARACTERSETutf8NOTNULLDEFAULT'',

`category_bg`varchar(255)NOTNULLDEFAULT'',

`status`tinyint(2)unsignedNOTNULLDEFAULT'1'COMMENT'1:正常;2:禁用',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=13DEFAULTCHARSET=utf8mb4COMMENT='零件類(lèi)型表';--Tablestructureforc_category

--

DROPTABLEIFEXISTS`c_category`;

CREATETABLE`c_category`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`pid`int(10)unsignedNOTNULLDEFAULT'1',

`category_name`varchar(50)CHARACTERSETutf8NOTNULLDEFAULT'',

`category_bg`varchar(255)NOTNULLDEFAULT'',

`status`tinyint(2)unsignedNOTNULLDEFAULT'1'COMMENT'1:正常;2:禁用',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=13DEFAULTCHARSET=utf8mb4COMMENT='零件類(lèi)型表';商品信息表建表信息:

--

--Tablestructureforc_part

--

DROPTABLEIFEXISTS`c_part`;

CREATETABLE`c_part`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`p_name`varchar(255)NOTNULLDEFAULT''COMMENT'零件名',

`p_pics`varchar(500)NOTNULLDEFAULT''COMMENT'商品配圖',

`p_detail`varchar(1000)NOTNULLDEFAULT''COMMENT'商品描述',

`category_id`int(10)unsignedNOTNULLDEFAULT'0'COMMENT'--

--Tablestructureforc_part

--

DROPTABLEIFEXISTS`c_part`;

CREATETABLE`c_part`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`p_name`varchar(255)NOTNULLDEFAULT''COMMENT'零件名',

`p_pics`varchar(500)NOTNULLDEFAULT''COMMENT'商品配圖',

`p_detail`varchar(1000)NOTNULLDEFAULT''COMMENT'商品描述',

`category_id`int(10)unsignedNOTNULLDEFAULT'0'COMMENT'商品分類(lèi)id',

`num`int(10)unsignedNOTNULLDEFAULT'0',

`price`decimal(10,2)unsignedNOTNULLDEFAULT'0.00'COMMENT'單價(jià)',

`discount`varchar(20)NOTNULLDEFAULT''COMMENT'折扣后的價(jià)格',

`is_popular`tinyint(1)unsignedNOTNULLDEFAULT'0'COMMENT'1:推薦;0:不推薦',

`status`tinyint(2)unsignedNOTNULLDEFAULT'0'COMMENT'0:未上架;1:上架;2:下架',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=12DEFAULTCHARSET=utf8mb4COMMENT='零件表';用戶(hù)信息表建表信息:--

--Tablestructureforc_user

--

DROPTABLEIFEXISTS`c_user`;

CREATETABLE`c_user`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`uname`varchar(50)NOTNULLDEFAULT'',

`email`varchar(60)NOTNULLDEFAULT'',

`phone`varchar(100)NOTNULLDEFAULT'',

`code`char(6)NOTNULLDEFAULT'',

`avatar`varchar(255)NOTNULLDEFAULT'',

`password`varchar(255)NOTNULLDEFAULT'',

`address`varchar(255)NOTNULLDEFAULT'',

`status`tinyint(2)unsignedNOTNULLDEFAULT'1'COMMENT'1:正常;2:禁用',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=5DEFAULTCHARSET=utf8mb4COMMENT='用戶(hù)表';--

--Tablestructureforc_user

--

DROPTABLEIFEXISTS`c_user`;

CREATETABLE`c_user`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`uname`varchar(50)NOTNULLDEFAULT'',

`email`varchar(60)NOTNULLDEFAULT'',

`phone`varchar(100)NOTNULLDEFAULT'',

`code`char(6)NOTNULLDEFAULT'',

`avatar`varchar(255)NOTNULLDEFAULT'',

`password`varchar(255)NOTNULLDEFAULT'',

`address`varchar(255)NOTNULLDEFAULT'',

`status`tinyint(2)unsignedNOTNULLDEFAULT'1'COMMENT'1:正常;2:禁用',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=5DEFAULTCHARSET=utf8mb4COMMENT='用戶(hù)表';購(gòu)物車(chē)表建表信息:--

--Tablestructureforc_cart

--

DROPTABLEIFEXISTS`c_cart`;

CREATETABLE`c_cart`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`part_id`int(10)unsignedNOTNULLDEFAULT'0',

`num`int(10)unsignedNOTNULLDEFAULT'1',

`user_id`int(10)unsignedNOTNULLDEFAULT'0',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=23DEFAULTCHARSET=utf8mb4;圖5-6 c_cart表--

--Tablestructureforc_cart

--

DROPTABLEIFEXISTS`c_cart`;

CREATETABLE`c_cart`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`part_id`int(10)unsignedNOTNULLDEFAULT'0',

`num`int(10)unsignedNOTNULLDEFAULT'1',

`user_id`int(10)unsignedNOTNULLDEFAULT'0',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=23DEFAULTCHARSET=utf8mb4;6、訂單表建表信息:--

--Tablestructureforc_order

--

DROPTABLEIFEXISTS`c_order`;

CREATETABLE`c_order`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`user_id`int(10)unsignedNOTNULLDEFAULT'0',

`part_id`int(10)unsignedNOTNULLDEFAULT'0',

`price`decimal(10,2)unsignedNOTNULLDEFAULT'0.00',

`nums`int(10)unsignedNOTNULLDEFAULT'0',

`discount`decimal(10,2)unsignedNOTNULLDEFAULT'0.00',

`total`decimal(10,2)unsignedNOTNULLDEFAULT'0.00',

`address`varchar(255)NOTNULLDEFAULT'',

`status`tinyint(1)unsignedNOTNULLDEFAULT'1'COMMENT'訂單狀態(tài)',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=6DEFAULTCHARSET=utf8mb4COMMENT='訂單表';--

--Tablestructureforc_order

--

DROPTABLEIFEXISTS`c_order`;

CREATETABLE`c_order`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`user_id`int(10)unsignedNOTNULLDEFAULT'0',

`part_id`int(10)unsignedNOTNULLDEFAULT'0',

`price`decimal(10,2)unsignedNOTNULLDEFAULT'0.00',

`nums`int(10)unsignedNOTNULLDEFAULT'0',

`discount`decimal(10,2)unsignedNOTNULLDEFAULT'0.00',

`total`decimal(10,2)unsignedNOTNULLDEFAULT'0.00',

`address`varchar(255)NOTNULLDEFAULT'',

`status`tinyint(1)unsignedNOTNULLDEFAULT'1'COMMENT'訂單狀態(tài)',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBAUTO_INCREMENT=6DEFAULTCHARSET=utf8mb4COMMENT='訂單表';留言表建表信息:--

--Tablestructureforc_message

--

DROPTABLEIFEXISTS`c_message`;

CREATETABLE`c_message`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`user_id`int(10)unsignedNOTNULLDEFAULT'0',

`msg`varchar(255)NOTNULLDEFAULT'',

`status`tinyint(1)unsignedNOTNULLDEFAULT'1',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBDEFAULTCHARSET=utf8mb4;圖5-8 c_message表--

--Tablestructureforc_message

--

DROPTABLEIFEXISTS`c_message`;

CREATETABLE`c_message`(

`id`int(10)unsignedNOTNULLAUTO_INCREMENT,

`user_id`int(10)unsignedNOTNULLDEFAULT'0',

`msg`varchar(255)NOTNULLDEFAULT'',

`status`tinyint(1)unsignedNOTNULLDEFAULT'1',

`created_at`int(10)unsignedNOTNULLDEFAULT'0',

`updated_at`int(10)unsignedNOTNULLDEFAULT'0',

PRIMARYKEY(`id`)

)ENGINE=InnoDBDEFAULTCHARSET=utf8mb4;5.2.3數(shù)據(jù)庫(kù)連接SpringShop系統(tǒng)是利用phpMyAdmin設(shè)計(jì)的數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)設(shè)計(jì)好之后,當(dāng)我們使用數(shù)據(jù)庫(kù)的數(shù)據(jù)時(shí),首先要與數(shù)據(jù)庫(kù)建立連接,進(jìn)行通信。在Yaf框架下,我們與數(shù)據(jù)庫(kù)建立連接也變得很簡(jiǎn)單。我們采用PDO擴(kuò)展,首先獲取數(shù)據(jù)庫(kù)配置,然后使用PDO進(jìn)行連接。數(shù)據(jù)庫(kù)的基本配置本系統(tǒng)放在Yaf框架下的配置文件Conf文件夾下的application.ini中。具體配置信息如下:圖5-9 數(shù)據(jù)庫(kù)配置信息其中配置信息表示:Type:SQL服務(wù)器類(lèi)型;Host:數(shù)據(jù)庫(kù)的名字或IP地址,因?yàn)楸緳C(jī)在本地部署的服務(wù)器,所以為localhost,或者本地環(huán)回地址;Port:MySQL服務(wù)器端口為3306;User:數(shù)據(jù)庫(kù)用戶(hù)名;Pwd:用戶(hù)密碼;Name:數(shù)據(jù)庫(kù)名字;Db_prefix:數(shù)據(jù)庫(kù)的表前綴。PDO連接數(shù)據(jù)庫(kù):圖5-10 PDO連接數(shù)據(jù)庫(kù)信息連接數(shù)據(jù)庫(kù)首先在application.ini文件里獲取數(shù)據(jù)庫(kù)的基本配置,通過(guò)Yaf的getConfig()方法即可獲取到application.ini文件所有的配置信息,從而獲取到數(shù)據(jù)庫(kù)配置信息;再通過(guò)PDO進(jìn)行連接通信。這里把數(shù)據(jù)庫(kù)連接封裝成connSql()函數(shù)。5.3網(wǎng)站界面設(shè)計(jì)SpringShop系統(tǒng)的界面都是本著簡(jiǎn)潔大方的風(fēng)格進(jìn)行設(shè)計(jì)的。前端界面主打黑白色調(diào),給人以干凈、大方的感受,后端主要走黑白灰的簡(jiǎn)潔工作風(fēng)路線。前后臺(tái)在色彩上的選擇都是以近似色的色階進(jìn)行選取,不會(huì)給人太突兀的感覺(jué),整個(gè)系統(tǒng)使用下來(lái)不會(huì)有太大的視覺(jué)疲勞的感受[3]。該系統(tǒng)已經(jīng)設(shè)計(jì)完畢,所有的功能都能正常使用,下面用一些系統(tǒng)的界面截圖進(jìn)行介紹。5.3.1前臺(tái)界面及介紹SpringShop前臺(tái)的登錄界面:圖5-11 系統(tǒng)前臺(tái)的登錄頁(yè)前臺(tái)登錄是通過(guò)郵箱加密碼的方式進(jìn)行登錄,如果是第一次登錄的用戶(hù),則默認(rèn)自動(dòng)注冊(cè)賬戶(hù)。非第一次登錄的用戶(hù)直接使用郵箱加設(shè)置的密碼進(jìn)行登錄,如果忘記密碼可以通過(guò)點(diǎn)擊忘記密碼按鈕,通過(guò)提供郵箱賬號(hào),系統(tǒng)會(huì)發(fā)一封帶有重置密碼鏈接的郵件到郵件賬號(hào)的郵箱,用戶(hù)通過(guò)重置密碼鏈接進(jìn)行密碼重設(shè)。SpringShop導(dǎo)航顯示:圖5-12 系統(tǒng)前臺(tái)的導(dǎo)航顯示頁(yè)SpringShop首頁(yè)界面顯示:圖5-13 系統(tǒng)前臺(tái)首頁(yè)-1系統(tǒng)首頁(yè)的首屏主要是展示一些大促銷(xiāo)或者想重點(diǎn)推的商品。圖5-14 系統(tǒng)前臺(tái)首頁(yè)-2系統(tǒng)首頁(yè)第二屏展示商品分類(lèi),及促銷(xiāo)商品信息。圖5-15 系統(tǒng)前臺(tái)首頁(yè)-3系統(tǒng)首頁(yè)第三屏,顯示熱門(mén)活動(dòng)商品及商城合作品牌的列表。SpringShop某個(gè)類(lèi)別下商品列表界面顯示:圖5-16 系統(tǒng)前臺(tái)某類(lèi)別下商品信息列表該界面左側(cè)顯示上方某一大類(lèi)別下的二級(jí)分類(lèi),中間顯示類(lèi)別下的商品列表。列表顯示商品名、商品簡(jiǎn)要的信息及商品原價(jià)和商品給的折扣價(jià)。該頁(yè)面的商品列表上方還統(tǒng)計(jì)了該類(lèi)別下的商品總數(shù)及可以根據(jù)商品上新時(shí)間、商品價(jià)格進(jìn)行商品顯示排序。列表下方是分頁(yè)處理,當(dāng)某個(gè)分類(lèi)下的商品一屏顯示不完,可以通過(guò)上下翻頁(yè)進(jìn)行展示。SpringShop某個(gè)具體商品的詳情頁(yè):圖5-17 商品詳情頁(yè)商品詳情頁(yè):主要以商品圖片、商品名、商品原價(jià)、及折扣后的價(jià)格還有商品的一些促銷(xiāo)口號(hào)信息為主。商品圖片根據(jù)后臺(tái)上傳的數(shù)量可以進(jìn)行自動(dòng)輪播滾動(dòng)顯示。還有一個(gè)添加商品到購(gòu)物車(chē)的功能,添加后的商品可以在購(gòu)物車(chē)?yán)镞M(jìn)行結(jié)算。SpringShop購(gòu)物車(chē)界面:圖5-18 購(gòu)物車(chē)界面購(gòu)物車(chē)界面:主要展示購(gòu)物車(chē)?yán)锷唐窋?shù)量、購(gòu)物車(chē)?yán)锏纳唐妨斜砑百?gòu)物車(chē)?yán)锏娜可唐房們r(jià)與可以享受的折扣信息。通過(guò)商品圖右上角的×按鈕,可以對(duì)購(gòu)物車(chē)?yán)锏纳唐愤M(jìn)行移除操作,移除后的商品不會(huì)進(jìn)行結(jié)算。通過(guò)點(diǎn)擊checkout結(jié)算按鈕,進(jìn)入到結(jié)算頁(yè)面,進(jìn)行商品的結(jié)算。SpringShop商品結(jié)算頁(yè):圖5-19 商品結(jié)算頁(yè)商品結(jié)算頁(yè)左側(cè)欄是結(jié)算地址的填寫(xiě)表單,右側(cè)是結(jié)算商品信息、商品價(jià)格及選擇付款方式還有一個(gè)下單按鈕,點(diǎn)擊placeorder按鈕及完成商品下單功能,完成下單之后購(gòu)物車(chē)會(huì)被請(qǐng)空。SpringShopContact頁(yè):圖5-20 Contact頁(yè)Contact頁(yè)面:主要是展示公司的建筑物位置信息及聯(lián)系方式。5.3.2系統(tǒng)后臺(tái)管理界面及介紹SpringShop后臺(tái)登錄頁(yè):圖5-21 后臺(tái)登錄頁(yè)publicfunctionisAdmin($params)

{

try{

$sql='selectid,passwordfromc_adminwhereemail=:emaillimit1';

$stmt=$this->pdo->prepare($sql);

$stmt->bindParam(':email',$params['email']);

$res=$stmt->execute();

if($res){

$data=$stmt->fetch(PDO::FETCH_ASSOC);

if($data){

if(password_verify($params['password'],$data['password'])){

returnarray(1,$data['id']);

}else{

returnarray(2,'密碼錯(cuò)誤');

}

}

}

returnarray(0,'用戶(hù)不存在');

}catch(Exception$e){

var_dump($e->getMessage());

returnfalse;

}

}后臺(tái)主要是針對(duì)整個(gè)系統(tǒng)的相關(guān)管理而設(shè)置的。使用者為系統(tǒng)的管理員,所以登錄使用管理員賬號(hào)、密碼及隨機(jī)驗(yàn)證碼。管理員密碼為了安全性更高,密碼不直接存在數(shù)據(jù)庫(kù)里,而是選擇使用PHP的password_hash()函數(shù),生成唯一的hash值,這個(gè)值產(chǎn)生的時(shí)候就確定了,沒(méi)有解密算法,就算是同一個(gè)密碼,hash值也只有一個(gè),所以就算別人拿到了hash值,也無(wú)法找到原始的密碼,最后驗(yàn)證的時(shí)候用密碼和hash值結(jié)合使用password_verify()publicfunctionisAdmin($params)

{

try{

$sql='selectid,passwordfromc_adminwhereemail=:emaillimit1';

$stmt=$this->pdo->prepare($sql);

$stmt->bindParam(':email',$params['email']);

$res=$stmt->execute();

if($res){

$data=$stmt->fetch(PDO::FETCH_ASSOC);

if($data){

if(password_verify($params['password'],$data['password'])){

returnarray(1,$data['id']);

}else{

returnarray(2,'密碼錯(cuò)誤');

}

}

}

returnarray(0,'用戶(hù)不存在');

}catch(Exception$e){

var_dump($e->getMessage());

returnfalse;

}

}圖5-22 用戶(hù)登錄處理過(guò)程 SpringShop后臺(tái)登錄失敗顯示:圖5-23 后臺(tái)登錄-非管理員賬戶(hù)顯示頁(yè)登錄失敗頁(yè):指使用了錯(cuò)誤的管理員賬戶(hù)登錄,會(huì)跳轉(zhuǎn)到錯(cuò)誤提示頁(yè),從而無(wú)法進(jìn)入系統(tǒng)。SpringShop后臺(tái)主頁(yè):圖5-24 后臺(tái)管理系統(tǒng)主頁(yè)該頁(yè)面主要是顯示一些匯總數(shù)據(jù):今日訂單總數(shù)、今日新用戶(hù)數(shù),總共的訂單數(shù)及總用戶(hù)數(shù);還有后臺(tái)管理員間的留言板功能;還有最新的訂單簡(jiǎn)要的數(shù)據(jù)展示。相關(guān)的后臺(tái)信息列表分頁(yè)顯示采用Ajax獲取數(shù)據(jù)的方式,以局部刷新的形式進(jìn)行展示動(dòng)態(tài)數(shù)據(jù)。具體實(shí)現(xiàn)代碼如下:$(document).on('click','.add-message',function(){

varmessage=$('.input-cont>.message-info').val();

$.ajax({

type:'post',

url:'/Home/Index/leaveMessage',

data:{

message:message

},

dataType:'json',

success:function(data){

if(data.code>0){

vardata=data.result;

varstr='<liclass="out">'+

'<imgclass="avatar"alt="留言者頭像"src="'+data["avatar"]+'"/>'+

'<divclass="message">'+

'<spanclass="arrow"></span>'+

'<ahref="javascript:;"class="name">'+data['username']+'</a>'+

'<spanclass="datetime">at'+data['created_at']+'</span>'+

'<spanclass="body">'+data['msg']+'</span>'

'</div>'+

'</li>';

$('.chats').append(str);

$('.input-cont>.message-info').val("");

}else{

alert(data.message);

}

},

error:function(){

alert('Errorwasoccured!');

}

});

});

});對(duì)返回的數(shù)據(jù)進(jìn)行了封裝,具體封裝類(lèi)response及其靜態(tài)方法代碼如下:<?php

classresponse{

constERRO_CODE=-100;

constSUCC_CODE=100;

constEXP_CODE=-600;

constNO_LOGIN=-500;

constLACK_PARAM=-200;

publicstaticfunctionresult($result=array(),$msg="",$code=self::SUCC_CODE)

{

$data=array('result'=>$result,'message'=>$msg,'code'=>$code);

header("Access-Control-Allow-Origin:*");

echojson_encode($data);

exit;

}

publicstaticfunctionerror($msg='操作失敗',$code=self::ERRO_CODE)

{

if(!is_numeric($code)){

return'';

}

$data=array('code'=>$code,'message'=>$msg);

header("Access-Control-Allow-Origin:*");

echojson_encode($data);

exit;

}

publicstaticfunctionsucc($msg='操作成功',$code=self::SUCC_CODE,$result=array()){

$res=array('code'=>$code,'message'=>$msg,'result'=>$result);

header("Access-Control-Allow-Origin:*");

echojson_encode($res);

exit;

}publicstaticfunctionerr_occur_exp($msg="系統(tǒng)執(zhí)行異常,請(qǐng)重試~",$code=self::EXP_CODE){

if(!is_numeric($code)){

return"";

}

header("Access-Control-Allow-Origin:*");

$data=array('code'=>$code,'message'=>$msg);

echojson_encode($data);

exit;

}

publicstaticfunctionerr_lack_param($msg="缺失參數(shù)~",$code=self::LACK_PARAM){

if(!is_numeric($code)){

return"";

}

header("Access-Control-Allow-Origin:*");

$data=array('message'=>$msg,'code'=>$code);

echojson_encode($data);

exit;

}

publicstaticfunctionerr_no_login($msg="用戶(hù)未登錄~",$code=self::NO_LOGIN){

if(!is_numeric($code)){

return"";

}

header("Access-Control-Allow-Origin:*");

$data=array('message'=>$msg,'code'=>$code);

echojson_encode($data);

exit;

}

}使用封裝的類(lèi),使得返回的數(shù)據(jù)有了更直觀的理解。后臺(tái)取數(shù)據(jù)使用PDO:publicfunctiongetPartList($params)

{

try{

$sql='selectp.id,p.p_name,p_pics,p_detail,p.num,p.price,c.category_name,p.is_popular,p.discount,p.status,p.updated_atfromc_partp,c_categorycwherep.category_id=c.id';

if(isset($params['p_name'])&&$params['p_name']){

$sql.="andp.p_namelike'%".$params['p_name']."%'";

}

if(isset($params['status'])&&$params['status']){

$sql.='andp.status='.$params['status'];

}

if(isset($params['category_id'])&&$params['category_id']){

$sql.='andp.category_id='.$params['category_id'];

}

$sql.='orderbyp.iddesc';

$stmt=$this->pdo->prepare($sql);

$res=$stmt->execute();

if($res){

$arr=$stmt->fetchAll(PDO::FETCH_ASSOC);

return$arr;

}

returnfalse;

}catch(Exception$e){

var_dump($e->getMessage());

returnfalse;

}

}商品信息頁(yè):圖5-25 商品信息頁(yè)該界面展示后臺(tái)管理員添加商品數(shù)據(jù)后的列表顯示,可支持?jǐn)?shù)據(jù)篩選。新增商品信息相關(guān)彈窗顯示效果圖:圖5-26 新增商品信息彈窗-1圖5-27 編輯商品信息彈窗-2商品描述字段使用的是簡(jiǎn)單輕巧的WangEditor插件,可以對(duì)商品描述的文字進(jìn)行樣式的控制。商品配圖可支持上傳多個(gè)圖片。圖5-28 商品分類(lèi)列表頁(yè)圖5-29 新增商品分類(lèi)彈窗SpringShop訂單管理模塊界面:圖5-30 訂單數(shù)據(jù)列表頁(yè)用戶(hù)管理頁(yè):圖5-31 用戶(hù)管理列表頁(yè)用戶(hù)管理頁(yè)主要是用戶(hù)的基本信息的管理。對(duì)用戶(hù)在公司的狀態(tài)對(duì)其賬號(hào)進(jìn)行錄入、編輯等操作。管理員用戶(hù)管理頁(yè):圖5-32 管理員用戶(hù)管理列表頁(yè)管理員信息修改頁(yè):圖5-33 管理員信息修改頁(yè)該頁(yè)面主要是補(bǔ)充管理員信息,可以修改頭像、聯(lián)系方式等第6章系統(tǒng)測(cè)試6.1測(cè)試目的一個(gè)系統(tǒng)要正式發(fā)布上線,首先得經(jīng)過(guò)一系列的測(cè)試,才能給用戶(hù)使用,測(cè)試的目的必須確保系統(tǒng)的整體功能正常使用;確保整個(gè)的系統(tǒng)流程能走通同時(shí)也能達(dá)到期望的結(jié)果;作為一個(gè)商城網(wǎng)站還得確保系統(tǒng)安全性。通過(guò)測(cè)試,不斷完善系統(tǒng),在功能都實(shí)現(xiàn)的基礎(chǔ)上,不斷提升用戶(hù)體驗(yàn)。6.2測(cè)試方法 軟件測(cè)試是使用人工或自動(dòng)的手段來(lái)運(yùn)行或測(cè)定某個(gè)軟件系統(tǒng)的過(guò)程,其目的在于檢驗(yàn)它是否滿(mǎn)足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。

從是否關(guān)心軟件內(nèi)部結(jié)構(gòu)和具體實(shí)現(xiàn)的角度劃分,測(cè)試方法主要有白盒測(cè)試和黑盒測(cè)試。白盒測(cè)試方法主要有代碼檢査法、靜態(tài)結(jié)構(gòu)分析法、靜態(tài)質(zhì)量度量法、邏輯覆蓋法、基本路徑測(cè)試法、域測(cè)試、符號(hào)測(cè)試、路徑覆蓋和程序變異。黑盒測(cè)試方法主要包括等價(jià)類(lèi)劃分法、邊界值分析法、錯(cuò)誤推測(cè)法、因果圖法、判定表驅(qū)動(dòng)法、正交試驗(yàn)設(shè)計(jì)法、功能圖法、場(chǎng)景法等。6.3測(cè)試原則木桶原理:在測(cè)試的過(guò)程中,遇到再小的問(wèn)題,也不可得過(guò)且過(guò),應(yīng)該正視每一個(gè)問(wèn)題,不然系統(tǒng)有可能會(huì)因這個(gè)小問(wèn)題而產(chǎn)生不可估量的后果。Bug的80-20原則:一般情況下,在分析、設(shè)計(jì)、實(shí)現(xiàn)系統(tǒng)的過(guò)程中能夠發(fā)現(xiàn)和避免80%的Bug,而專(zhuān)門(mén)的系統(tǒng)測(cè)試過(guò)程中又能找出其余Bug中的80%,最后的5%的Bug可能只有在用戶(hù)的大范圍、長(zhǎng)時(shí)間使用后才會(huì)顯現(xiàn)出來(lái)。因?yàn)闇y(cè)試只能夠保證盡可能多地發(fā)現(xiàn)錯(cuò)誤,無(wú)法保證能夠發(fā)現(xiàn)所有的錯(cuò)誤。6.4功能測(cè)試本次測(cè)試主要針對(duì)系統(tǒng)可能出現(xiàn)的bug選取一系列合適的用例測(cè)試。部分系統(tǒng)測(cè)試結(jié)果展示如下:網(wǎng)站后臺(tái)管理員登錄功能測(cè)試:測(cè)試賬號(hào):正常賬號(hào):xyq@正常密碼:123123測(cè)試一:賬號(hào)正常,密碼錯(cuò)誤的情況下:xyq@密碼:123321登錄賬號(hào)密碼錯(cuò)誤時(shí)顯示:圖6-1 功能測(cè)試效果圖-1登錄會(huì)先驗(yàn)證賬號(hào)密碼是否符合規(guī)范,如果不符合則不會(huì)進(jìn)行是否是系統(tǒng)用戶(hù)的驗(yàn)證。當(dāng)賬戶(hù)不對(duì)時(shí)進(jìn)入到信息提示頁(yè),否則進(jìn)入后臺(tái)主頁(yè)。測(cè)試二:賬號(hào)為系統(tǒng)管理員的情況下測(cè)試:賬號(hào)xyq123@密碼:123123非系統(tǒng)管理賬號(hào)預(yù)期無(wú)法進(jìn)入系統(tǒng)頁(yè),實(shí)際測(cè)試情況:圖6-2 功能測(cè)試效果圖-26.5性能測(cè)試把SpringShop系統(tǒng)放到云服務(wù)器上,通過(guò)9訪問(wèn)系統(tǒng)。在服務(wù)器上對(duì)系統(tǒng)進(jìn)行測(cè)試,具體測(cè)試工具使用ab工具,測(cè)試網(wǎng)站后臺(tái)首頁(yè)情況如下:測(cè)試命令:ab-n10000-c29/Home/Index/index這個(gè)命令代碼測(cè)試該網(wǎng)頁(yè)1000次,并發(fā)2次。圖6-3 性能測(cè)試效果圖

第7章總結(jié)與反思經(jīng)過(guò)一段時(shí)間的開(kāi)發(fā)這個(gè)系統(tǒng),該系統(tǒng)已經(jīng)基本達(dá)到原定的目標(biāo),但是總體上還是存在很多問(wèn)題需要改善的,比如整個(gè)系統(tǒng)的UI界面設(shè)計(jì)上還是缺少一些元素,因?yàn)樽约翰粫?huì)設(shè)計(jì)需要的一些小icon,使得最終的沒(méi)有達(dá)到自己想要的效果;其次本身前端的功底還是待加強(qiáng)的;最后還有的模塊的流程也還可以更順暢一些,但是因?yàn)槟芰τ邢?,只能盡量去不斷完善這個(gè)系統(tǒng)。通過(guò)這段時(shí)間的學(xué)習(xí),我收益頗多。在項(xiàng)目開(kāi)發(fā)之前,設(shè)計(jì)思維導(dǎo)圖的過(guò)程中,感覺(jué)整個(gè)系統(tǒng)的最終完成不會(huì)耗時(shí)太長(zhǎng),沒(méi)想到后面的功能會(huì)比一開(kāi)始的要復(fù)雜一些,在購(gòu)物車(chē)處理上面也是考慮很久,要不要使用cookie,最后還是選擇了簡(jiǎn)單一些的,多使用一張表來(lái)存。整個(gè)網(wǎng)站的流程設(shè)計(jì)也是經(jīng)過(guò)很多次比較大的調(diào)整。在這過(guò)程中,我也深刻的體會(huì)到一個(gè)靠譜的流程設(shè)計(jì)的重要性,不然后期返工會(huì)更耗時(shí)。前端的界面也更換過(guò)3種風(fēng)格,最后確定了這一套。還有就是對(duì)Yaf這個(gè)框架的認(rèn)識(shí)和具體的運(yùn)用,發(fā)現(xiàn)Yaf雖然輕巧但是它的可擴(kuò)展性和路由設(shè)計(jì)都是非常靈活的。再者就是對(duì)于UI設(shè)計(jì)方面,雖然不是專(zhuān)業(yè)上的,但是基本的界面設(shè)計(jì)的知識(shí)與審美我還是很欠缺的,之后應(yīng)該要去學(xué)一些美工常識(shí),多了解認(rèn)識(shí)頁(yè)面的構(gòu)造。SpringShop系統(tǒng)雖然大致流程走通了,想要的基本功能也都實(shí)現(xiàn)了,但是我之后還是會(huì)通過(guò)學(xué)習(xí)相關(guān)知識(shí)來(lái)不斷改善它,爭(zhēng)取能讓使用的用戶(hù)體驗(yàn)感更好。參考文獻(xiàn)邱世華.Linux操作系統(tǒng)之奧秘.北京:電子工業(yè)出版社,2008.郭兵,熊光澤,陳宇.嵌入式應(yīng)用軟件開(kāi)發(fā)環(huán)境的構(gòu)造[J].計(jì)算機(jī)應(yīng)用,2000,020(007):7.李霞.MVC設(shè)計(jì)模式的原理與實(shí)現(xiàn)[D].吉林大學(xué),2004.柳青.Linux應(yīng)用教程.北京:清華大學(xué)出版社,2008.社大鵬《RedhatLinux因特網(wǎng)服務(wù)器》中國(guó)水利水電出版社2004.2.林慧琛《RedhatLinux服務(wù)器配置與應(yīng)用》人民郵電出版社2006.1.岳浩《Linux操作系統(tǒng)教程》機(jī)械工業(yè)出版社2005.4.麻志毅.面向?qū)ο蠓治雠c設(shè)計(jì)[M].北京:機(jī)械工業(yè)出版社,2012.3.胡崧.HTML從入門(mén)到精通[M].北京:中國(guó)青年出版社,2007.陳會(huì)安.JavaScript基礎(chǔ)與實(shí)例教程[M].北京:中國(guó)電力出版社,2007.Michaelkofler.MySQL5權(quán)威指南[M].北京:人民郵電出版社,2006.鄭人杰,馬素霞,麻志毅著.軟件工程.北京:人民郵電出版社,2009.11.ADocumentEngineonaDBCluster.TorstenGrabs,KlemensBohm,Hans-JorgSchek.2005.ChallengerJRH,DantzigPM,DiasDM,etal.Methodandsystemforcachingcustomizedinformation[J].2004.張濤主編;張濤,馬春燕,鄭煒,楊帆,王海鵬,成靜編.軟件技術(shù)基礎(chǔ)實(shí)驗(yàn)教程:西北工業(yè)大學(xué)出版社,2015.01:第111頁(yè)

致謝在完成畢業(yè)設(shè)計(jì)之際,我首先要感謝父母四年來(lái)對(duì)于我的學(xué)業(yè),無(wú)論是經(jīng)濟(jì)上還是精神上,都在默默的支持我、鼓勵(lì)我,才能讓我有機(jī)會(huì)順利完成學(xué)業(yè)。同時(shí)也感謝計(jì)算機(jī)學(xué)院的老師們多年來(lái)對(duì)我的培養(yǎng)與幫助。感謝室友們和同學(xué)的陪伴與鼓勵(lì)。感謝我的畢業(yè)設(shè)計(jì)導(dǎo)師覃福鈿老師,感謝老師這一段時(shí)間一直跟進(jìn)我畢業(yè)設(shè)計(jì)的情況,不斷的悉心指導(dǎo)與督促。最后能按時(shí)完成我的畢業(yè)設(shè)計(jì),老師的幫助我會(huì)銘記在心的,再次感謝覃福鈿老師,您辛苦啦!

電腦無(wú)法識(shí)別U盤(pán)該怎么辦HYPERLINK電腦無(wú)法識(shí)別U盤(pán)怎么辦?打開(kāi)我的電腦上單擊右鍵,在快捷菜單里,選擇“管理”,打開(kāi)“計(jì)算機(jī)管理”窗口。在計(jì)算機(jī)管理窗口里,選擇“存儲(chǔ)”下面的“磁盤(pán)管理”,如果看得到?jīng)]有盤(pán)符的U盤(pán),那么在這個(gè)U盤(pán)上按鼠標(biāo)右鍵,選擇“更改驅(qū)動(dòng)器名稱(chēng)和路徑”選項(xiàng),就打開(kāi)了“更改……的驅(qū)動(dòng)器號(hào)和路徑”對(duì)話(huà)框。再點(diǎn)擊“更改”按鈕,打開(kāi)“更改驅(qū)動(dòng)器號(hào)和路徑”的對(duì)話(huà)框,在“指定以下驅(qū)動(dòng)器號(hào)”的右邊下拉列表里,選擇你希望分配給U盤(pán)的驅(qū)動(dòng)器號(hào),盡可能靠后選擇,比如X、Y、Z,選擇好后,單擊確定按鈕,回到上一次“更改……的驅(qū)動(dòng)器號(hào)和路徑”對(duì)話(huà)框窗口,再一次單擊確定,就回到“計(jì)算機(jī)管理”窗口。至此,如果一切正常,就給U盤(pán)單獨(dú)設(shè)置了一個(gè)長(zhǎng)久使用的驅(qū)動(dòng)器號(hào),并卻,不受虛擬驅(qū)動(dòng)器的影響了。建議將U盤(pán)插到電腦上,看任務(wù)欄中是否顯示圖標(biāo),如果顯示,在我的電腦點(diǎn)右鍵查看屬性——高級(jí)——硬件——設(shè)備管理器——查看里面是否有問(wèn)號(hào)的設(shè)備,在問(wèn)號(hào)設(shè)備上點(diǎn)右鍵——更新驅(qū)動(dòng)程序然后下一步——否暫時(shí)不連接到網(wǎng)絡(luò)——下一步自動(dòng)安裝軟件(推薦)就可以了另外:系統(tǒng)不認(rèn)U盤(pán)的幾種處理方法1.禁用主板usb設(shè)備。管理員在CMOS設(shè)置里將USB設(shè)備禁用,并且設(shè)置BIOS密碼,這樣U盤(pán)插到電腦上以后,電腦也不會(huì)識(shí)別。這種方法有它的局限性,就是不僅禁用了U盤(pán),同時(shí)也禁用了其他的usb設(shè)備,比如usb鼠標(biāo),usb光驅(qū)等。所以這種方法管理員一般不會(huì)用,除非這臺(tái)電腦非常重要,值得他舍棄掉整個(gè)usb總線的功能。但是這種屏蔽也可以破解,即便設(shè)置了密碼。整個(gè)BIOS設(shè)置都存放在CMOS芯片里,而COMS的記憶作用是靠主板上的一個(gè)電容供電的。電容的電來(lái)源于主板電池,所以,只要把主板電池卸下來(lái),用一根導(dǎo)線將原來(lái)裝電池的地方正負(fù)極短接,瞬間就能清空整個(gè)CMOS設(shè)置,包括BIOS的密碼。隨后只需安回電池,自己重新設(shè)置一下CMOS,就可以使用usb設(shè)備了。(當(dāng)然,這需要打開(kāi)機(jī)箱,一般眾目睽睽之下不大適用~~)2.修改注冊(cè)表項(xiàng),禁用usb移動(dòng)存儲(chǔ)設(shè)備。打開(kāi)注冊(cè)表文件,依次展開(kāi)"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\usbehci”雙擊右面的“Start”鍵,把編輯窗口中的“數(shù)值數(shù)據(jù)”改為“4”,把基數(shù)選擇為“十六進(jìn)制”就可以了。改好后注銷(xiāo)一下就可以看見(jiàn)效果了。為了防止別人用相同的方法來(lái)破解,我們可以刪除或者改名注冊(cè)表編輯器程序。提示:“Start”這個(gè)鍵是USB設(shè)備的工作開(kāi)關(guān),默認(rèn)設(shè)置為“3”表示手動(dòng),“2”是表示自動(dòng),“4”是表示停用。3.在computermanagement里將removablestorage的使用權(quán)限禁止。computermanagement是一個(gè)windows管理組件,可以在控制面板——管理工具——計(jì)算機(jī)管理打開(kāi)。在該工具窗口中storage——removablestorage——property中,general項(xiàng),可以控制系統(tǒng)托盤(pán)是否顯示security則可以管理移動(dòng)存儲(chǔ)設(shè)備的使用權(quán)限。在security中將普通用戶(hù)的使用權(quán)限降低,就可以達(dá)到禁用u盤(pán)的目的。破解的方法也很簡(jiǎn)單,管理員降低普通用戶(hù)移動(dòng)存儲(chǔ)設(shè)備的使用權(quán)限,但未必禁用computermanagement的使用權(quán)限。普通用戶(hù)可以通過(guò)這個(gè)工具解除usb移動(dòng)存儲(chǔ)設(shè)備的使用權(quán)限限制。另外,值得一提的是,如果u盤(pán)插到電腦上后可以驅(qū)動(dòng),但是我的電腦里卻沒(méi)有盤(pán)符,很有可能是管理員改動(dòng)了u盤(pán)的默認(rèn)盤(pán)符,使得我的電腦不能識(shí)別。這種情況,可以在movablestorage中看到u盤(pán)驅(qū)動(dòng)器。可以在u盤(pán)驅(qū)動(dòng)器屬性設(shè)置里為u盤(pán)重新分配一個(gè)盤(pán)符,再重新插拔一次u盤(pán),就可以在我的電腦里看到u盤(pán)的盤(pán)符了。一、首先可以將該U盤(pán)換到別的機(jī)器上,看使用是否正常。如果排除了硬件損壞的可能,一般就是軟件方面有問(wèn)題。在WindowsXP+SP1操作系統(tǒng)下,有些USB2.0設(shè)備的確常常出現(xiàn)工作不穩(wěn)定的問(wèn)題,可以試試安裝設(shè)備自帶的USB2.0驅(qū)動(dòng)程序。另外最好不要使用USB延長(zhǎng)線,防止因?yàn)楣╇姴蛔愣斐刹环€(wěn)定現(xiàn)象。如果仍無(wú)效,可以在主板BIOS設(shè)定中,將USB接口強(qiáng)行設(shè)置為USB1.1傳輸速率。二、(適用于WIN98)啟動(dòng)計(jì)算機(jī),進(jìn)入主板BIOS設(shè)置,檢查BIOS中USB的相關(guān)選項(xiàng)是否已經(jīng)打開(kāi):OnChipUSB設(shè)定為Enabled;USBController設(shè)定為Enabled;PNPOSInstalled設(shè)定為Yes;AssignIRQForUSB設(shè)成Enabled。要正常使用USB設(shè)備首先要開(kāi)啟USB接口,在主板BIOS里可以進(jìn)行此項(xiàng)工作,一般來(lái)說(shuō)只需在BIOS中進(jìn)入ChipsetFeatures設(shè)置,并將USBKeyborad/MouseLegacy選項(xiàng)設(shè)定為Enable,就能夠保證在操作系統(tǒng)下使用USB鍵盤(pán)了。這些選項(xiàng)的作用是打開(kāi)主板芯片組對(duì)USB設(shè)備的完全支持,為系統(tǒng)識(shí)別USB設(shè)備做準(zhǔn)備工作。三、USB口接觸不好處理辦法:拔下,等十秒鐘再插上USB口,使接觸完好;五、閃存盤(pán)驅(qū)動(dòng)程序沒(méi)有安裝完成(WIN98系統(tǒng)下)處理辦法:鼠標(biāo)點(diǎn)“我的電腦”,選擇屬性找到“通用串行總線”,刪除其中的USBMASSSTORAGE項(xiàng),再點(diǎn)擊“刷新”,然后按照提示重新安裝一次驅(qū)動(dòng)程序。六、接其它USB設(shè)備(如掃描儀、打印機(jī)、數(shù)碼相機(jī))時(shí)可以正常使用,接優(yōu)盤(pán)時(shí)閃指示燈不亮,不能夠使用。1、檢查優(yōu)盤(pán)與電腦的聯(lián)接是否正常,并換用其它USB接口測(cè)試。2、檢查設(shè)備管理器,看是否出現(xiàn)”通用總線設(shè)備控制器”條目,如果沒(méi)有,請(qǐng)將電腦主板BIOS中USB接口條目*激活(ENABLE)。3、如果電腦安裝過(guò)其它類(lèi)型USB設(shè)備,卸載該設(shè)備驅(qū)動(dòng)程序,并首先安裝優(yōu)盤(pán)驅(qū)動(dòng)程序。4、到其它電腦試用此優(yōu)盤(pán),確認(rèn)是否優(yōu)盤(pán)不良。七、啟動(dòng)型優(yōu)盤(pán)在的電腦上無(wú)法實(shí)現(xiàn)啟動(dòng),可能是主板型號(hào)不支持。如何判斷一塊主板是否支持閃存盤(pán)啟動(dòng)系統(tǒng)啟動(dòng)型優(yōu)盤(pán)是采用模擬USB軟驅(qū)和USB硬盤(pán)的方式啟動(dòng)電腦的。只要電腦主板支持USB設(shè)備啟動(dòng),即BIOS的啟動(dòng)選項(xiàng)中有USB-FDD、USB-HDD或是其它類(lèi)似的選項(xiàng),就可以使用啟動(dòng)型優(yōu)盤(pán)啟動(dòng)電腦。八、第一次在電腦上使用優(yōu)盤(pán),未出現(xiàn)提示發(fā)現(xiàn)新硬件的窗口,驅(qū)動(dòng)程序無(wú)法安裝的原因可能是:1、主板usbcontroller未啟用解決辦法:在電腦主板BIOS中啟用此功能。2、usbcontroller已經(jīng)啟用但運(yùn)行不正常解決辦法:在設(shè)備管理器中刪除”通用串行控制器”下的相關(guān)設(shè)備并刷新。3、優(yōu)盤(pán)被電腦識(shí)別異常,在設(shè)備管理器中表現(xiàn)為帶有黃色?或!的”其它設(shè)備”或“未知設(shè)備”。解決辦法:刪除此設(shè)備并刷新。九、大容量的U盤(pán)(例如兼具M(jìn)P3播放器或錄音功能的U盤(pán))或移動(dòng)硬盤(pán)在電腦上無(wú)法正常使用,雖然系統(tǒng)提示找到了未知的USB設(shè)備,但無(wú)法正確識(shí)別U盤(pán)或移動(dòng)硬盤(pán)。原因可能是:1.USB接口供電不足:系統(tǒng)為每個(gè)USB接口分配了500mA的最大輸出電流,一般的U盤(pán)只需要100mA的工作電流,因此在使用過(guò)程中不會(huì)出現(xiàn)什么問(wèn)題。大多數(shù)移動(dòng)硬盤(pán)所使用的是普通的2.5英寸硬盤(pán),其工作電流介于500mA~1000mA之間,此時(shí)假如僅僅通過(guò)USB接口供電,當(dāng)系統(tǒng)中并無(wú)其他USB設(shè)備時(shí),那么還是可以勉強(qiáng)使用的,但如果電壓不穩(wěn)的話(huà),就隨時(shí)可能出現(xiàn)供電不足的問(wèn)題。特別是使用支持USB2.0的移動(dòng)硬盤(pán)時(shí),情況最為嚴(yán)重。另外,如果你的筆記本電腦使用電池供電,那么USB接口所分配的電量就更小了。2.使用了外接的USB擴(kuò)展卡:在筆記本電腦中使用USB2.0的U盤(pán)或移動(dòng)硬盤(pán)時(shí),如果筆記本電腦不支持USB2.0技術(shù),一般必須通過(guò)PCMCIA卡轉(zhuǎn)USB2.0的擴(kuò)展卡來(lái)間接實(shí)現(xiàn)支持,這些擴(kuò)展卡基本上都采用NEC公司的D720100AGMUSB控制芯片,少則提供兩個(gè)USB2.0接口,多則提供五個(gè)USB2.0接口,對(duì)一般用戶(hù)而言足夠使用了。由于PCMICA接口提供的電源功率比板載USB接口要小,這樣就會(huì)由于供電不足而導(dǎo)致移動(dòng)硬盤(pán)工作的出現(xiàn)問(wèn)題。解決方案:1.它從USB連接線上接移動(dòng)硬盤(pán)的一端引出一根轉(zhuǎn)接線,可以插入電腦背后的PS/2接口取電,這里可以比USB接口提供更大的電流輸出。2.利用電源補(bǔ)償線(也稱(chēng)“鍵盤(pán)取電線”),如果U盤(pán)或移動(dòng)硬盤(pán)的包裝盒中提供了選配的電源適配器,你就可以直接使用外接電源,這樣就可以從根本上避免供電不足的情況發(fā)生了前置USB線接錯(cuò)。當(dāng)主板上的USB線和機(jī)箱上的前置USB接口對(duì)應(yīng)相接時(shí)把正負(fù)接反就會(huì)發(fā)生這類(lèi)故障,這也是相當(dāng)危險(xiǎn)的,因?yàn)檎?fù)接反很可能會(huì)使得USB設(shè)備燒毀。所以盡量采用機(jī)箱后置的USB接口,也少用延長(zhǎng)線.也可能是斷口有問(wèn)題,換個(gè)USB端口看下.USB接口電壓不足。當(dāng)把<ahref="mobileharddisk">移動(dòng)硬盤(pán)</a>接在前置USB口上時(shí)就有可能發(fā)生系統(tǒng)無(wú)法識(shí)別出設(shè)備的故障。原因是<ahref="">移動(dòng)硬盤(pán)</a>功率比較大要求電壓相對(duì)比較嚴(yán)格,前置接口可能無(wú)法提供足夠的電壓,當(dāng)然劣質(zhì)的電源也可能會(huì)造成這個(gè)問(wèn)題。解決方法是<ahref="">移動(dòng)硬盤(pán)</a>不要接在前置USB接口上,更換劣質(zhì)低功率的電源或盡量使用外接電源的硬盤(pán)盒,假如有條件的話(huà)。主板和系統(tǒng)的兼容性問(wèn)題。呵呵這類(lèi)故障中最著名的就是NF2主板與USB的兼容性問(wèn)題。假如你是在NF2的主板上碰到這個(gè)問(wèn)題的話(huà),則可以先安裝最新的nForce2專(zhuān)用USB2.0驅(qū)動(dòng)和補(bǔ)丁、最新的主板補(bǔ)丁和操作系統(tǒng)補(bǔ)丁,還是不行的話(huà)嘗試著刷新一下主板的BIOS一般都能解決。系統(tǒng)或BIOS問(wèn)題。當(dāng)你在BIOS或操作系統(tǒng)中禁用了USB時(shí)就會(huì)發(fā)生USB設(shè)備無(wú)法在系統(tǒng)中識(shí)別。解決方法是開(kāi)啟與USB設(shè)備相關(guān)的選項(xiàng)。就是開(kāi)機(jī)按F2或DEL鍵,進(jìn)入BIOS,把enableusbdevice選擇enable。拔插要小心,讀寫(xiě)時(shí)千萬(wàn)不可拔出,不然有可能燒毀芯片。XP中任務(wù)欄中多出USB設(shè)備的圖標(biāo),打開(kāi)該圖標(biāo)就會(huì)在列表中顯示U盤(pán)設(shè)備,選擇將該設(shè)備停用,然后你再拔出設(shè)備,這樣會(huì)比較安全。

其實(shí)判斷軟件硬件問(wèn)題很簡(jiǎn)單,在別的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論