//秒杀模拟练习
public function sha(){
$testObj = new IModel("goodss");
$arr = $testObj->query();
$this->list = $arr;
$this->redirect('sha');
}
public function miao(){
$id = IReq::get("id");
$testObj = new IModel("goodss");
$arr = $testObj->query("goods_id=$id");
$num = $arr[0]['goods_num'];
if($num>0){ //支持购买
//库存减少
$num-=1;
$data = array(
'goods_num'=>$num
);
$testObj->setData($data);
$a = $testObj->update("goods_id=$id");
if($a){
echo "<script>alert('购买成功');location.href='http://localhost/test/iwebshop4.6/index.php?controller=text&action=sha'</script>";
}else{
echo "<script>alert('购买失败,请稍后重试!');location.href='http://localhost/test/iwebshop4.6/index.php?controller=text&action=sha'</script>";
}
}else{
echo "<script>alert('不好意思,库存不足!');location.href='http://localhost/test/iwebshop4.6/index.php?controller=text&action=sha'</script>";
}
}

iwebshop模拟秒杀的更多相关文章

  1. springboot项目:Redis分布式锁的使用(模拟秒杀系统)

    模拟秒杀系统: 第一步:编写Service package com.payease.service; /** * liuxiaoming * 2017-12-14 */ public interfac ...

  2. .NetCore+Jexus代理+Redis模拟秒杀商品活动

    开篇叙 本篇将和大家分享一下秒杀商品活动架构,采用的架构方案正如标题名称.NetCore+Jexus代理+Redis,由于精力有限所以这里只设计到商品添加,抢购,订单查询,处理队列抢购订单的功能:有不 ...

  3. 使用ServiceBroker自动激活模拟"秒杀"场景

    1.简介 SQL Server Service Broker 是SQL server 里面比较独特的一个功能.它可帮助开发人员构建异步的松散耦合应用程序 ServiceBroker入门文章:http: ...

  4. 基于redis分布式锁实现“秒杀”

    转载:http://blog.5ibc.net/p/28883.html 最近在项目中遇到了类似“秒杀”的业务场景,在本篇博客中,我将用一个非常简单的demo,阐述实现所谓“秒杀”的基本思路. 业务场 ...

  5. 分布式锁实现秒杀 - 基于redis实现

    业务场景 所谓秒杀,从业务角度看,是短时间内多个用户“争抢”资源,这里的资源在大部分秒杀场景里是商品:将业务抽象,技术角度看,秒杀就是多个线程对资源进行操作,所以实现秒杀,就必须控制线程对资源的争抢, ...

  6. 用redis实现分布式锁,秒杀案例(转)

    分布式锁的简单实现代码: 需要的jar包: jedis-2.9.0.jar. commons-pool2-2.4.2.jar import java.util.List; import java.ut ...

  7. 秒杀应用的MySQL数据库优化

    关于秒杀 随着双11活动的不断发展,小米饥饿营销模式的兴起,“秒杀”已经成为一个热点词汇.在一些活动中,热销商品会以惊人的速度售罄,比如最近本人在抢购美图M4手机,12点开卖,1分钟之内就被售罄. 秒 ...

  8. SQL SERVER 2014--内存表实现秒杀场景

    ===================================== 网上针对“秒杀”的解决方案很多,数据拆分化解热点,READPAST解决锁问题,应用程序排队限制并发等等很多方式,各有优缺点, ...

  9. 基于redis分布式锁实现“秒杀”(转载)

    转载:http://blog.csdn.net/u010359884/article/details/50310387 最近在项目中遇到了类似“秒杀”的业务场景,在本篇博客中,我将用一个非常简单的de ...

随机推荐

  1. Python自然语言处理学习笔记之性别识别

    从今天起开始写自然语言处理的实践用法,今天学了文本分类,并没用什么创新的东西,只是把学到的知识点复习一下 性别识别(根据给定的名字确定性别) 第一步是创建一个特征提取函数(feature extrac ...

  2. IOS任务管理之NSThread使用

    前言: 无论是Android还是IOS都会使用到多任务,多任务的最小单元那就是线程,今天学习总结一下IOS的NSThread使用. NSThread使用? 第一种方式实例化 //selector :线 ...

  3. 【闲聊PHP】编程界的萝莉小美女--PHP

    本文地址 01 前言--上了贼船 不知道何时就上了PHP的贼船了,开始了web的开发,记得差不多两年前我还是做传统电子行业的人,就是嵌入式的方向,那时在天津或摆弄手机,或下煤窑摆弄电话,抑或就是在医疗 ...

  4. js实现菜单折叠导航

    <style type="text/css"> <!-- *{margin:0;padding:0;border:0;} body {  font-family: ...

  5. JSP 学习一

    今天开始JSP的学习,作为Web开发人员,对JSP的开发是必不可少的,因此有必要对JSP进行掌握和学习:为此开始JSP的学习: 今日目标: 1)什么是JSP? 2)JSP的运行机制? 3)JSP的三种 ...

  6. Finding distance between two curves

    http://answers.opencv.org/question/129819/finding-distance-between-two-curves/ 问题: Hello, Im trying ...

  7. XHTML表格

    1.基本格式: <table> <tr> <th>A</th><th>B</th><th>C</th>& ...

  8. Windows下安装Redis数据库并实现C#访问

    1.Redis在Windows下的安装 目前Redis官方并不支持Redis的Windows版本,需要去GitHub下载. GitHub上的Redis分两种,一种是以命令行形式安装的,一种是以Wind ...

  9. HA高可用集群

     准备2台机器:主:master:192.168.254.140从:slave:192.168.254.141 1.主上安装:wget www.lishiming.net/data/attachmen ...

  10. C#泛型编程

    1.泛型的概念     C#中的泛型与C++中的模板类似,泛型是实例化过程中提供的类型或类建立的.泛型并不限于类,还可以创建泛型接口.泛型方法,甚至泛型委托.这将极大提高代码的灵活性,正确使用泛型可以 ...