成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

json數據來制作商城的產品分類菜單

開發 前端
人們早就習慣了在互聯網購物買東西,甚至有一部分朋友還是上癮了。本篇PHP教程就來幫助您的電子商務項目實現最重要的產品類別的導航菜單系統。

人們早就習慣了在互聯網購物買東西,甚至有一部分朋友還是上癮了。本篇PHP教程就來幫助您的電子商務項目實現最重要的產品類別的導航菜單系統。我已經使用PHP、MYSQL及JQuery實現了亞馬遜樣式的產品分類圖像菜單,下面讓我們來看一下如何使用json數據來制作商城的產品分類菜單。

amazon產品分類導航 

amazon產品分類導航

在線演示

數據庫

我們先看一下簡單的數據庫表的設計。主要涉及到一個分類表,包含了4個字段cat_id,name,parent,media。

  1. CREATE TABLE `categories`  
  2. (  
  3. `cat_id` int(11) NOT NULL AUTO_INCREMENT,  
  4. `name` varchar(150) ,  
  5. `parent` int(11) ,  
  6. `media` varchar(100),  
  7. PRIMARY KEY (`cat_id`)  
  8. ); 

數據表categories中的分類和子分類的數據存儲類似下面的格式。

商品分類表數據格式 

商品分類表數據格式

categories.php

這個文件主要負責從categories表生成json數據,供前臺來顯示分類菜單。

  1. <?php  
  2. include('db.php');  
  3. $sql = mysql_query("select cat_id,name,media from categories where parent=0");  
  4. // parent categories node  
  5. $categories = array("Categories" => array());  
  6.  
  7. while ($row = mysql_fetch_array($sql))  
  8. {  
  9. $cat_id = $row['cat_id'];  
  10. $ssql = mysql_query("select cat_id,name,media from categories where parent='$cat_id'");  
  11.  
  12. // single category node  
  13. $category = array(); // temp array  
  14. $category["cat_id"] = $row["cat_id"];  
  15. $category["name"] = $row["name"];  
  16. $category["media"] = $row["media"];  
  17. $category["sub_categories"] = array(); // subcategories again an array  
  18.  
  19. while ($srow = mysql_fetch_array($ssql))  
  20. {  
  21. $subcat = array(); // temp array  
  22. $subcat["cat_id"] = $srow['cat_id'];  
  23. $subcat["name"] = $srow['name'];  
  24. // pushing sub category into subcategories node  
  25. array_push($category["sub_categories"], $subcat);  
  26. }  
  27.  
  28. // pushing sinlge category into parent  
  29. array_push($categories["Categories"], $category);  
  30. }  
  31. echo ((isset($_GET['callback'])) ? $_GET['callback'] : "") . '(' . json_encode($categories) . ')';  
  32. ?> 

JSON 輸出的格式

 

json數據格式 

json數據格式

#p#

JavaScript & HTML

實際上最重要的部分在這里,我們需要使用$.getJSON來附加分類數據到UL #menu_ul元素上,子目錄數據存儲在隱藏的UL 類名hideul。

  1. <script type="text/javascript" src="http://ajax.googleapis.com/  
  2. ajax/libs/jquery/1.6.2/jquery.min.js"></script>  
  3. <script type="text/javascript" >  
  4. $(document).ready(function()  
  5. {  
  6.  
  7. $.getJSON("categories.php?callback=?"function(data)  
  8. {  
  9. $.each(data.Categories, function(i, category)  
  10. {  
  11. var subjsondata='';  
  12. $.each(category.sub_categories, function(i, sub_categories)  
  13. {  
  14. subjsondata += "<li>"+sub_categories.name+"</li>";  
  15. });  
  16. var jsondata ="<li class="category" id=''"+category.cat_id+"'>"+category.name+"<ul class="hideul" id='hide"+category.cat_id+"' media='"+category.media+"'>"+subjsondata+"</ul>  
  17. </li>";  
  18. $(jsondata).appendTo("#menu_ul");  
  19. });  
  20. }  
  21. );  
  22.  
  23. //MouseOver on Categories  
  24. $(".category").live('mouseover',function(event)  
  25. {  
  26. $("#menu_slider").show();  
  27. var D=$(this).html();  
  28. var id=$(this).attr('id');  
  29. var V=$("#hide"+id).html();  
  30. var M=$("#hide"+id).attr("media");  
  31. $("#submenu_ul").html(V);  
  32. $("#menu_slider h3").html(D);  
  33. //Background Image Check  
  34. if(M!='null')  
  35. {  
  36. $("#menu_slider").css({"width""450px"});  
  37. }  
  38. else 
  39. {  
  40. $("#menu_slider").css({"width""250px"});  
  41. }  
  42. $("#menu_slider").css('background''url(backgrounds/' + M + ') #ffffff no-repeat right bottom');  
  43. });  
  44.  
  45. //Document Click  
  46. $(document).mouseup(function()  
  47. {  
  48. $("#menu_slider").hide();  
  49. });  
  50.  
  51. //Mouse click on sub menu  
  52. $("#menu_slider").mouseup(function(){ return false });  
  53.  
  54. //Mouse click on my account link  
  55. $("#menu_box").mouseup(function(){ return false });  
  56. });  
  57. </script> 

$(".category").live('mouseover',function(event){}- category 分類標簽li的類名。使用attr("id") 調用分類標簽li的值,根據ID的類名移動.hideul 子目錄的值到$("#submenu_ul").html(V)。

HTML 代碼

  1. //HTML Code  
  2. <div id='menu_box' class='shadow'> 
  3. <ul id='menu_ul'></ul> 
  4. </div> 
  5. <div id='menu_slider'> 
  6. <h3></h3> 
  7. <ul id='submenu_ul'></ul> 
  8. </div> 

db.php

數據庫配置文件

  1. <?php  
  2. $mysql_hostname = "localhost";  
  3. $mysql_user = "username";  
  4. $mysql_password = "password";  
  5. $mysql_database = "databasename";  
  6. $bd = mysql_connect($mysql_hostname$mysql_user$mysql_passwordor die("Could not connect database");  
  7. mysql_select_db($mysql_database$bdor die("Could not select database");  
  8. ?> 

CSS

  1. #menu_box  
  2. {  
  3. border-top:solid 3px #333;  
  4. border-left:solid 1px #dedede;  
  5. border-right:solid 1px #dedede;  
  6. border-bottom:solid 1px #dedede;  
  7. min-height:400px;width:200px;  
  8. background-color:#fff;  
  9. margin-left:20px;  
  10. float:left;  
  11. position:relative;  
  12. z-index:300 
  13. }  
  14. #menu_slider  
  15. {  
  16. border-top:solid 3px #333;  
  17. border-left:solid 1px #dedede;  
  18. border-right:solid 1px #dedede;  
  19. border-bottom:solid 1px #dedede;  
  20. min-height:370px;background-color:#fff;margin-left:220px;  
  21. position:absolute;  
  22. width:250px;  
  23. position:relative;  
  24. z-index:200;  
  25. display:none;  
  26. padding:15px 
  27. }  
  28. .hideul{display:none

原文鏈接:http://www.phpfuns.com/scripts/ecommerce-menu-design-with-json-data.shtml

責任編輯:張偉 來源: phpfuns
相關推薦

2024-08-06 11:17:58

SpringJSON數據

2011-05-31 15:56:52

游戲啟動菜單Android

2012-03-07 15:13:07

PhoneGapmenu菜單

2011-09-28 09:10:51

Windows開始

2011-09-27 10:13:38

諾基亞Windows Pho

2010-09-13 13:35:39

CSS屬性

2022-05-08 13:05:22

職位產品經理開源

2015-07-22 14:54:20

我來貸

2020-10-10 09:57:03

AIOps夢工廠制作進度

2018-01-08 17:17:46

微信

2010-09-30 13:11:59

J2MECanvas

2012-05-14 16:29:53

HTML5

2014-04-29 10:39:27

CSS3JavaScript

2023-03-03 09:12:53

服務器

2020-07-20 14:04:34

Excel下拉菜單數據

2018-11-21 09:53:08

服務服務器分類

2022-11-22 11:47:25

JSON格式外置表單

2014-12-23 14:14:54

2021-08-30 09:25:25

Bert模型PyTorch語言

2013-07-24 09:36:03

產品上線產品著陸頁
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产在线视频三区 | 午夜精品久久久久久久久久久久久 | 中文字幕日韩在线观看 | 精品一区二区三区av | 三级免费 | 91精品国产综合久久久久久丝袜 | 国产福利在线看 | 久久99精品久久久久 | 久久亚洲一区二区 | 美女天堂在线 | 懂色av蜜桃av| 国产乱肥老妇国产一区二 | а天堂中文最新一区二区三区 | 99久久婷婷国产综合精品电影 | 成人欧美一区二区三区在线播放 | av毛片 | 九九热在线视频 | 久久久精品一区二区三区 | 国产高清在线 | 日韩欧美一区二区三区免费观看 | 香蕉91 | 九九综合 | 日韩精品在线一区 | 激情免费视频 | 国产精品视频久久久 | 91精品国产乱码麻豆白嫩 | 亚洲看片网站 | 亚洲一区中文字幕在线观看 | 精品国产一区二区三区成人影院 | www.国产一区 | a级毛片国产 | 中文字幕不卡在线观看 | 精品久久一区 | 一区二区不卡 | 亚洲国产成人av | 全免一级毛片 | 九九久久精品 | 求个av网址 | 中文字幕高清在线 | 久久久免费观看视频 | 日日夜夜精品免费视频 |