vivo电商平台项目

vivo商城

项目简介
  • 本项目是参照vivo商城的PC端,实现了其中的部分功能
  • 项目共分为5个页面,登录、注册、首页、商品详情、购物车
  • 用户可以选择游客模式对商品进行浏览,或者登录平台将商品加入购物车,生成订单等操作
  • 保存用户的订单信息
技术实现
  • 使用了jQuery
  • 使用了md5加密
  • 使用了图片懒加载
  • 使用到了cookie缓存技术
  • 使用Ajax技术进行前后端的交互
  • 数据库采用了mysql
  • 后台采用了php技术进行对数据库的逻辑操作
效果展示

注册界面
在这里插入图片描述
登录界面
在这里插入图片描述
首页
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
商品详情页
在这里插入图片描述
购物车界面
在这里插入图片描述
在这里插入图片描述

核心代码

login.js

$(function() {
   

    $('.login-btn').on('click', function() {
   
        var username = $('.phone-box>input').val() + ''; //获取手机号框的值
        var password = $('.pwd>input').val() + ''; //获取密码框的值
        var res = /^1[356789]\d{9}$/; //验证手机号的正则表达式

        if (res.test($('.phone-box>input').val())) {
    //验证手机号的格式
            $('.input-area>.dis').removeClass('show').addClass('hide');
            $.ajax({
   
                type: "GET",
                url: "../lib/login.php",

                data: {
    'username': $.md5(username), 'password': $.md5(password) }, //发送加密手机号和密码
                dataType: "json",
                success: function(response) {
   

                    if (Boolean(response.u_id) === true) {
    //存在该用户
                        $('.input-area>.erro').removeClass('show').addClass('hide');
                        location.href = "../html/index.html"; //登录成功跳转到首页


                        if ($('.login-auto>input')[0].checked) {
    //勾选时,登录时状态保存14天
                            cookie.set('isLogin', 'true', 14); //保存登录状态
                            cookie.set('u_id', response.u_id, 14); //保存用户id
                            cookie.set('shop', response.u_shop, 14); //保存用户购物信息

                        } else {
   
                            cookie.set('isLogin', 'true', 1);
                            cookie.set('u_id', response.u_id, 1);
                            cookie.set('shop', response.u_shop, 14);
                        }
                    } else {
   
                        $('.input-area>.erro').removeClass('hide').addClass('show'); //显示登录失败的提示信息
                        cookie.set('isLogin', 'false');
                    }
                }

            });
        } else {
   
            $('.input-area>.dis').removeClass('hide').addClass('show'); //显示格式不正确的提示信息
        }
    });
});

res.js

$(function() {
   
    $('.res-btn').on('click', function() {
   
        var username = $('.phone-box>input').val() + ''; //获取手机号框的值
        var password = $('.pwd>input').val() + ''; //获取密码框的值
        var res = /^1[356789]\d{9}$/; //验证手机号的正则表达式

        if ($('.protocol>input')[0].checked) {
   
            // console.log(1);
            $('.inner-box>.check').removeClass('show').addClass('hide');
            if (res.test($('.phone-box>input').val())) {
   
                $('.inner-box>.dis').removeClass('show').addClass('hide');
                $.ajax({
   
                    type: "GET",
                    url: "../lib/res.php",
                    data: {
    'username': $.md5(username), 'password': $.md5(password) }, //发送加密手机号和密码

                    success: function(response) {
   

                        var res = JSON.parse(response);

                        if (res.isRes === 'true') {
    //判断注册是否成功
                            $('.inner-box>.erro').removeClass('hide').addClass('show'); //显示注册失败的提示信息

                        } else {
   
                            // console.log(1);
                            $('.inner-box>.erro').removeClass('show').addClass('hide'); //注册成功跳转到登录界面
                            location.href = "../html/login.html";
                        }
                    }
                });
            } else {
   
                $('.inner-box>.dis').removeClass('hide').addClass('show'); //显示格式不正确的提示信息
            }
        } else {
   
            $('.inner-box>.check').removeClass('hide').addClass('show');
        }
    });
});

index-get.js
通过ajax请求动态加载数据数据到首页

$(function() {
   
    //获得主页商品列表发送ajax请求
    $.ajax({
   
        type: "GET",
        url: "../lib/getinfo.php",
        dataType: "json",
        success: function(data) {
   

            let temp = '';
            data.forEach((elm, i) => {
   
                let pic = JSON.parse(elm.pic);
                let title = JSON.parse(elm.title);
                /* 点击商品时同时发送商品id */
                temp += ` <li class="item">
                                <a href="info.html?id=${
     elm.id}">
                                    <div class="p-pic">
                                         <img data-original="..${
     pic[0].src}" alt="" class="lazy">
                                    </div>
                                    <div class="p-title">
                                    ${
     title[0].title}
                                     </div>
                                     <div class="p-scd-title">
                                     ${
     title[1].title}
                                     </div>
                                    <div class="p-price">
                                        <span class="yuan">¥</span>${
     elm.price}
                                    </div>
                                </a>
                             </li>`
            });
            $('.sec-list').append(temp); //加载项目列表

            $('.lazy').lazyload({
    effect: "fadeIn" }); //图片懒加载
        }
    });
    $.ajax({
   
        type: "get",
        url: "../lib/gethot.php",
        dataType: "json",
        success: function(data) {
   

            let temp = '';
            data.forEach((elm
  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值