十七、商品相册管理 1、首先创建对应的数据表,包括ID,商品ID,相册图片和相册小图等字段。然后实现在添加商品时将图片入库功能。可以在之前的商品添加的模板中再次添加一个选项卡,选项卡为图片上传功能。并添加按钮实现可以添加多张图片的操作,并为按钮增加点击增加元素的事件。 2、在商品控制器中添加方法来实现图片的上传功能,在这里可以将之前的图片上传功能的代码复制过来直接使用,并且将数据写入数据库中。 3、实现可以编辑商品的相册功能。在控制器中获取商品对应的相册图片信息,然后修改模板文件的图片href地址,使其显示出来,如果没有正常显示可能是因为之前的商品并没有上传图片。可以添加新的商品并上传图片后测试。 4、实现可以删除图片功能,修改模板文件,为其增加删除按钮,并为按钮添加事件并绑定Ajax,并在JavaScript代码中实现Ajax的创建。然后在控制器中增加可以删除图片的功能,使用I函数中的get方法获取要操作的图片的ID,并使用连贯操作来获取到要删除的图片信息。调用unlink方法来将图片删除,然后在数据库中实现图片的彻底删除。 十八、商品库存控制1、首先修改商品数据表,后面添加字段,字段为库存的数量。对于没有单选属性的商品可以直接设置该字段数量,对于有单选属性的商品,其库存数量应该为各单选属性之间所有数量的总和。然后创建库存表,字段分别为ID,商品ID,属性信息,商品库存。 2、实现库存的添加功能。首先在商品列表中添加设置库存的链接,连接地址使用U函生成。 在商品控制器中添加方法,用来设置库存的数量。通过I函数中get方法来获取要操作的商品的ID,然后通过商品的标识获取商品的单选属性值和属性信息。在模型中添加具体的方法来获取数据,通过连贯操作来连表查询出商品的单选属性值和属性信息。并将得到的数据转换为三维数组,目的是为了在模板中显示,根据属性的ID进行区分,然后修改模板文件,添加volist标签将数据循环变量出来显示。 3、实现库存的入库,修改表单中的name值,提交数据后,在控制器中通过I函数的post方法接收到数据,然后通过调用两次foreach方法将之前的三维数组循环遍历,并通过implode方法将数组转换为字符串类型,然后将数据写入数据库中。 4、库存入库的完善,在将数据写入数据库的时候,应该先将之前的库存信息删除掉,然后添加新的信息。同时还要计算当前的总库存,并对数据进行去重操作。 5、对没有单选属性的信息设置库存,首先修改模型文件中的自定义的字段,并在控制器中判断商品是否是单选属性,并为单选属性的商品创建新的模板,模板中只显示一个库存量的文本框,然后在模型中通过I函数的post方法接收数据,然后通过连贯操作叫数据写入数据库中。 6、完善在添加库存时显示之前的库存信息,在控制器中获取已有的信息,要根据有单选属性和没有单选属性的商品要分开获取数据,然后修改模板文件来将数据显示出来。 至此后台部分已经完成,接下来将完善前台的功能。
|