时间:2021-07-01 10:21:17 帮助过:5人阅读
实现目标:使用php和mysql写一个商品信息管理系统,并带有购物车功能
一、创建数据库和表
1.创建数据库和表:demodb
2.创建表格:goods
字段:商品编号,商品名称,商品类型,商品图片,单价,商品描述,库存量,添加时间
二、创建php文件编写代码(以下为要创建的php文件及其用途)
add.php 商品添加页面
edit.php 商品信息编辑表单页
index.php 商品信息浏览页
action.php 执行商品信息添加和修改及删除等操作处理
dbconfig.php 公共配置文件,数据库连接配置信息
menu.php 网站公共导航栏
uploads/ 上传图片的存放目录
function.php 公共函数库文件:图片信息的上传,等比缩放等处理函数
addCart.php 添加购物车信息的操作(向SESSION放入要购买的信息)
myCart.php 实现了购物车信息的浏览操作,并且实现商品信息的统计(小计和总价)
clearCart.php 实现了购物车信息的单个商品删除或清空购物车操作
updateCart.php 修改购物车中商品的数量,防止过小约束
各php文件关系图示:
好,那下面是代码部分:
首先是建表语句:
建表语句
- <span style="color: #008080;"> 1</span> <span style="color: #0000ff;">create</span> <span style="color: #0000ff;">database</span> newsdb;<span style="color: #808080;">//</span><span style="color: #000000;">创建库语句</span><span style="color: #008080;"> 2</span> <span style="color: #008080;"> 3</span> <span style="color: #0000ff;">create</span> <span style="color: #0000ff;">table</span><span style="color: #000000;"> goods (</span><span style="color: #008080;"> 4</span> id <span style="color: #0000ff;">int</span>(<span style="color: #800000; font-weight: bold;">10</span>) unsigned <span style="color: #808080;">NOT</span> <span style="color: #0000ff;">NULL</span><span style="color: #000000;"> AUTO_INCREMENT,</span><span style="color: #008080;"> 5</span> name <span style="color: #0000ff;">varchar</span>(<span style="color: #800000; font-weight: bold;">64</span>) <span style="color: #808080;">NOT</span> <span style="color: #0000ff;">NULL</span><span style="color: #000000;">,</span><span style="color: #008080;"> 6</span> typeid <span style="color: #0000ff;">int</span>(<span style="color: #800000; font-weight: bold;">10</span>) unsigned <span style="color: #808080;">NOT</span> <span style="color: #0000ff;">NULL</span><span style="color: #000000;">,</span><span style="color: #008080;"> 7</span> price <span style="color: #0000ff;">double</span>(<span style="color: #800000; font-weight: bold;">6</span>,<span style="color: #800000; font-weight: bold;">2</span>) unsigned <span style="color: #808080;">NOT</span> <span style="color: #0000ff;">NULL</span><span style="color: #000000;">,</span><span style="color: #008080;"> 8</span> total <span style="color: #0000ff;">int</span>(<span style="color: #800000; font-weight: bold;">10</span>) unsigned <span style="color: #808080;">NOT</span> <span style="color: #0000ff;">NULL</span><span style="color: #000000;">,</span><span style="color: #008080;"> 9</span> pic <span style="color: #0000ff;">varchar</span>(<span style="color: #800000; font-weight: bold;">32</span>) <span style="color: #808080;">NOT</span> <span style="color: #0000ff;">NULL</span><span style="color: #000000;">,</span><span style="color: #008080;">10</span> note <span style="color: #0000ff;">text</span><span style="color: #000000;">,</span><span style="color: #008080;">11</span> addtime <span style="color: #0000ff;">int</span>(<span style="color: #800000; font-weight: bold;">10</span>) unsigned <span style="color: #808080;">NOT</span> <span style="color: #0000ff;">NULL</span><span style="color: #000000;">,</span><span style="color: #008080;">12</span> <span style="color: #0000ff;">PRIMARY</span> <span style="color: #0000ff;">KEY</span><span style="color: #000000;"> (`id`)</span><span style="color: #008080;">13</span> ) <span style="color: #808080;">//</span>创建表语句
以下为各php文件代码,需要的朋友可直接将各代码复制并放到同一目录下即可,还要在同目录下创建uplaods文件夹存放上传图片
add.php
- <span style="color: #008080;"> 1</span> <span style="color: #008080;"> 2</span> <span style="color: #008080;"> 3</span> <title>商品信息管理</title><span style="color: #008080;"> 4</span> <span style="color: #008080;"> 5</span> <span style="color: #008080;"> 6</span> <center><span style="color: #008080;"> 7</span> <!--?php <span style="color: #0000ff;"-->include("menu.php");<span style="color: #008000;">//</span><span style="color: #008000;">导入导航栏 ?></span><span style="color: #008080;"> 8</span> <h3>发布商品信息</h3><span style="color: #008080;"> 9</span> <span style="color: #008080;">53</span> </center><span style="color: #008080;">54</span> <span style="color: #008080;">55</span>
输出结果 45 if(mysql_insert_id($link)>0) 46 { 47 echo "商品发布成功"; 48 }else 49 { 50 echo "商品发布失败"; 51 } 52 echo "
- <span style="color: #008080;"> 1</span> <!--?<span style="color: #000000;"-->php<span style="color: #008080;"> 2</span> <span style="color: #008000;">//</span><span style="color: #008000;">执行商品信息的增、删、改的操作</span><span style="color: #008080;"> 3</span> <span style="color: #008080;"> 4</span> <span style="color: #008000;">//一、导入配置文件和函数库文件</span><span style="color: #008080;"> 5</span> <span style="color: #0000ff;">require</span>("dbconfig.php"<span style="color: #000000;">);</span><span style="color: #008080;"> 6</span> <span style="color: #0000ff;">require</span>("function.php"<span style="color: #000000;">);</span><span style="color: #008080;"> 7</span> <span style="color: #008000;">//</span><span style="color: #008000;">二、连接MySQL,选择数据库</span><span style="color: #008080;"> 8</span> <span style="color: #800080;">$link</span> = <span style="color: #008080;">mysql_connect</span>(HOST,USER,PASS) or <span style="color: #0000ff;">die</span>("数据库连接失败"<span style="color: #000000;">);</span><span style="color: #008080;"> 9</span> <span style="color: #008080;">mysql_select_db</span>(DBNAME,<span style="color: #800080;">$link</span><span style="color: #000000;">);</span><span style="color: #008080;"> 10</span> <span style="color: #008080;"> 11</span> <span style="color: #008080;"> 12</span> <span style="color: #008000;">//</span><span style="color: #008000;">三、获取action参数的值,并做对应的操作</span><span style="color: #008080;"> 13</span> <span style="color: #0000ff;">switch</span>(<span style="color: #800080;">$_GET</span>["action"<span style="color: #000000;">])</span><span style="color: #008080;"> 14</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 15</span> <span style="color: #0000ff;">case</span> "add": <span style="color: #008000;">//</span><span style="color: #008000;">添加</span><span style="color: #008080;"> 16</span> <span style="color: #008000;"> //1.获取添加信息</span><span style="color: #008080;"> 17</span> <span style="color: #800080;">$name</span> = <span style="color: #800080;">$_POST</span>["name"<span style="color: #000000;">];</span><span style="color: #008080;"> 18</span> <span style="color: #800080;">$typeid</span> = <span style="color: #800080;">$_POST</span>["typeid"<span style="color: #000000;">];</span><span style="color: #008080;"> 19</span> <span style="color: #800080;">$price</span> = <span style="color: #800080;">$_POST</span>["price"<span style="color: #000000;">];</span><span style="color: #008080;"> 20</span> <span style="color: #800080;">$total</span> = <span style="color: #800080;">$_POST</span>["total"<span style="color: #000000;">];</span><span style="color: #008080;"> 21</span> <span style="color: #800080;">$note</span> = <span style="color: #800080;">$_POST</span>["note"<span style="color: #000000;">];</span><span style="color: #008080;"> 22</span> <span style="color: #800080;">$addtime</span> = <span style="color: #008080;">time</span><span style="color: #000000;">();</span><span style="color: #008080;"> 23</span> <span style="color: #008000;">//</span><span style="color: #008000;">2.验证()省略</span><span style="color: #008080;"> 24</span> <span style="color: #0000ff;">if</span>(<span style="color: #0000ff;">empty</span>(<span style="color: #800080;">$name</span><span style="color: #000000;">))</span><span style="color: #008080;"> 25</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 26</span> <span style="color: #0000ff;">die</span>("商品名称必须有值"<span style="color: #000000;">);</span><span style="color: #008080;"> 27</span> <span style="color: #000000;"> }</span><span style="color: #008080;"> 28</span> <span style="color: #008000;">//</span><span style="color: #008000;">3.执行图片上传</span><span style="color: #008080;"> 29</span> <span style="color: #800080;">$upinfo</span> = uploadFile("pic","./uploads/"<span style="color: #000000;">);</span><span style="color: #008080;"> 30</span> <span style="color: #0000ff;">if</span>(<span style="color: #800080;">$upinfo</span>["error"]===<span style="color: #0000ff;">false</span><span style="color: #000000;">)</span><span style="color: #008080;"> 31</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 32</span> <span style="color: #0000ff;">die</span>("图片信息上传失败:".<span style="color: #800080;">$upinfo</span>["info"<span style="color: #000000;">]);</span><span style="color: #008080;"> 33</span> }<span style="color: #0000ff;">else</span><span style="color: #008080;"> 34</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 35</span> <span style="color: #008000;">//</span><span style="color: #008000;">上传成功</span><span style="color: #008080;"> 36</span> <span style="color: #800080;">$pic</span> = <span style="color: #800080;">$upinfo</span>["info"];<span style="color: #008000;">//</span><span style="color: #008000;">获取上传成功的图片名</span><span style="color: #008080;"> 37</span> <span style="color: #008080;"> 38</span> <span style="color: #000000;"> }</span><span style="color: #008080;"> 39</span> <span style="color: #008000;">//</span><span style="color: #008000;">4.执行图片缩放</span><span style="color: #008080;"> 40</span> imageUpdateSize('./uploads/'.<span style="color: #800080;">$pic</span>,50,50<span style="color: #000000;">);</span><span style="color: #008080;"> 41</span> <span style="color: #008000;">//</span><span style="color: #008000;">5.拼装sql语句,并执行添加</span><span style="color: #008080;"> 42</span> <span style="color: #800080;">$sql</span> = "insert into goods values(null,'{<span style="color: #800080;">$name</span>}','{<span style="color: #800080;">$typeid</span>}',{<span style="color: #800080;">$price</span>},{<span style="color: #800080;">$total</span>},'{<span style="color: #800080;">$pic</span>}','{<span style="color: #800080;">$note</span>}',{<span style="color: #800080;">$addtime</span>})"<span style="color: #000000;">;</span><span style="color: #008080;"> 43</span> <span style="color: #008080;">mysql_query</span>(<span style="color: #800080;">$sql</span>,<span style="color: #800080;">$link</span><span style="color: #000000;">);</span><span style="color: #008080;"> 44</span> <span style="color: #008000;">//</span><span style="color: #008000;">6.判断并</span>
dbconfig.php
- <span style="color: #008080;"> 1</span> <!--?<span style="color: #000000;"-->php<span style="color: #008080;"> 2</span> <span style="color: #008000;">//</span><span style="color: #008000;">公共信息配置文件</span><span style="color: #008080;"> 3</span> <span style="color: #008080;"> 4</span> <span style="color: #008000;">//数据库信息配置</span><span style="color: #008080;"> 5</span> <span style="color: #008080;">define</span>("HOST","localhost");<span style="color: #008000;">//</span><span style="color: #008000;">主机名</span><span style="color: #008080;"> 6</span> <span style="color: #008080;">define</span>("USER","root"); <span style="color: #008000;">//</span><span style="color: #008000;">用户名</span><span style="color: #008080;"> 7</span> <span style="color: #008080;">define</span>("PASS","root"); <span style="color: #008000;">//</span><span style="color: #008000;">密码</span><span style="color: #008080;"> 8</span> <span style="color: #008080;">define</span>("DBNAME","demodb"); <span style="color: #008000;">//</span><span style="color: #008000;">数据库名</span><span style="color: #008080;"> 9</span> <span style="color: #008080;">10</span> <span style="color: #008000;">//商品类型列表信息</span><span style="color: #008080;">11</span> <span style="color: #800080;">$typelist</span>=<span style="color: #0000ff;">array</span>(1=>"服装",2=>"数码",3=>"食品"<span style="color: #000000;">);</span><span style="color: #008080;">12</span> <span style="color: #008080;">13</span> <span style="color: #008080;">14</span> ?>
index.php
- <span style="color: #008080;"> 1</span> <span style="color: #008080;"> 2</span> <span style="color: #008080;"> 3</span> <title>商品信息管理</title><span style="color: #008080;"> 4</span> <span style="color: #008080;"> 5</span> <span style="color: #008080;"> 6</span> <center><span style="color: #008080;"> 7</span> <!--?php <span style="color: #0000ff;"-->include("menu.php");<span style="color: #008000;">//</span><span style="color: #008000;">导入导航栏 ?></span><span style="color: #008080;"> 8</span> <h3>浏览商品信息</h3><h3><span style="color: #008080;"> 9</span> <span style="color: #008080;">10</span> <span style="color: #008080;">11</span><span style="color: #008080;">12</span><span style="color: #008080;">13</span><span style="color: #008080;">14</span><span style="color: #008080;">15</span><span style="color: #008080;">16</span><span style="color: #008080;">17</span><span style="color: #008080;">18</span><span style="color: #008080;">19</span><span style="color: #008080;">20</span>php <span style="color: #008080;">21</span><span style="color: #008000;">//</span><span style="color: #008000;">从数据库中读取信息并输出到浏览器表格中</span><span style="color: #008080;">22</span><span style="color: #008000;"> //1.导入配置文件</span><span style="color: #008080;">23</span><span style="color: #0000ff;">require</span>("dbconfig.php"<span style="color: #000000;">);</span><span style="color: #008080;">24</span><span style="color: #008000;">//</span><span style="color: #008000;">2.连接数据库,并选择数据库</span><span style="color: #008080;">25</span><span style="color: #800080;">$link</span> = @<span style="color: #008080;">mysql_connect</span>(HOST,USER,PASS) or <span style="color: #0000ff;">die</span>("数据库连接失败"<span style="color: #000000;">);</span><span style="color: #008080;">26</span><span style="color: #008080;">mysql_select_db</span>(DBNAME,<span style="color: #800080;">$link</span><span style="color: #000000;">);</span><span style="color: #008080;">27</span><span style="color: #008000;">//</span><span style="color: #008000;">3.执行商品信息查询</span><span style="color: #008080;">28</span><span style="color: #800080;">$sql</span>="select * from goods"<span style="color: #000000;">;</span><span style="color: #008080;">29</span><span style="color: #800080;">$result</span> = <span style="color: #008080;">mysql_query</span>(<span style="color: #800080;">$sql</span>,<span style="color: #800080;">$link</span><span style="color: #000000;">);</span><span style="color: #008080;">30</span><span style="color: #008080;">31</span><span style="color: #008000;">//</span><span style="color: #008000;">4.解析商品信息(解析结果集)</span><span style="color: #008080;">32</span><span style="color: #0000ff;">while</span>(<span style="color: #800080;">$row</span> = <span style="color: #008080;">mysql_fetch_assoc</span>(<span style="color: #800080;">$result</span><span style="color: #000000;">))</span><span style="color: #008080;">33</span><span style="color: #000000;"> {</span><span style="color: #008080;">34</span><span style="color: #0000ff;">echo</span> ""<span style="color: #000000;">;</span><span style="color: #008080;">35</span><span style="color: #0000ff;">echo</span> ""<span style="color: #000000;">;</span><span style="color: #008080;">36</span><span style="color: #0000ff;">echo</span> ""<span style="color: #000000;">;</span><span style="color: #008080;">37</span><span style="color: #0000ff;">echo</span> ""<span style="color: #000000;">;</span><span style="color: #008080;">38</span><span style="color: #0000ff;">echo</span> ""<span style="color: #000000;">;</span><span style="color: #008080;">39</span><span style="color: #0000ff;">echo</span> ""<span style="color: #000000;">;</span><span style="color: #008080;">40</span><span style="color: #0000ff;">echo</span> ""<span style="color: #000000;">;</span><span style="color: #008080;">41</span><span style="color: #0000ff;">echo</span> "<span style="color: #000000;"></span>"<span style="color: #000000;">;</span><span style="color: #008080;">47</span><span style="color: #0000ff;">echo</span> ""<span style="color: #000000;">;</span><span style="color: #008080;">48</span><span style="color: #000000;"> }</span><span style="color: #008080;">49</span><span style="color: #008000;">//</span><span style="color: #008000;">5.释放结果集,关闭数据库</span><span style="color: #008080;">50</span> ?><span style="color: #008080;">51</span><table border="1" width="700"> <tbody><tr> <th>商品编号</th> <th>商品名称</th> <th>商品图片</th> <th>单价</th> <th>库存量</th> <th>添加时间</th> <th>操作</th> </tr> <!--?<span style="color: #000000;"--> <tr> <td>{<span style="color: #800080;">$row</span>["id"]}</td> <td>{<span style="color: #800080;">$row</span>["name"]}</td> <td><img src="https://www.gxlcms.com/uploads/s_{<span style="color:>$row</span>[" pic']}'=""></td> <td>{<span style="color: #800080;">$row</span>["price"]}</td> <td>{<span style="color: #800080;">$row</span>["total"]}</td> <td>".<span style="color: #008080;">date</span>("Y-m-d H:i:s",<span style="color: #800080;">$row</span>['addtime'])."</td> <td><span style="color: #008080;">42</span> $row['id']}&picname={<span style="color: #800080;">$row</span><span style="color: #000000;">['pic']}'>删除 </span><span style="color: #008080;">43</span> $row<span style="color: #000000;">['id']}'>修改 </span><span style="color: #008080;">44</span> $row<span style="color: #000000;">['id']}'>放入购物车 </span><span style="color: #008080;">45</span> <span style="color: #008080;">46</span> </td> </tr> </tbody></table><span style="color: #008080;">52</span> </h3></center><span style="color: #008080;">53</span> <span style="color: #008080;">54</span>
edit.php
- <span style="color: #008080;"> 1</span> <span style="color: #008080;"> 2</span> <span style="color: #008080;"> 3</span> <title>商品信息管理</title><span style="color: #008080;"> 4</span> <span style="color: #008080;"> 5</span> <span style="color: #008080;"> 6</span> <center><span style="color: #008080;"> 7</span> <!--?<span style="color: #000000;"-->php <span style="color: #008080;"> 8</span> <span style="color: #0000ff;">include</span>("menu.php");<span style="color: #008000;">//</span><span style="color: #008000;">导入导航栏 </span><span style="color: #008080;"> 9</span> <span style="color: #008000;"> //1.导入配置文件</span><span style="color: #008080;">10</span> <span style="color: #0000ff;">require</span>("dbconfig.php"<span style="color: #000000;">);</span><span style="color: #008080;">11</span> <span style="color: #008000;">//</span><span style="color: #008000;">2.连接数据库,并选择数据库</span><span style="color: #008080;">12</span> <span style="color: #800080;">$link</span> = @<span style="color: #008080;">mysql_connect</span>(HOST,USER,PASS) or <span style="color: #0000ff;">die</span>("数据库连接失败"<span style="color: #000000;">);</span><span style="color: #008080;">13</span> <span style="color: #008080;">mysql_select_db</span>(DBNAME,<span style="color: #800080;">$link</span><span style="color: #000000;">);</span><span style="color: #008080;">14</span> <span style="color: #008000;">//</span><span style="color: #008000;">3.获取要修改的商品信息</span><span style="color: #008080;">15</span> <span style="color: #800080;">$sql</span>="select *from goods where id={<span style="color: #800080;">$_GET</span>['id']}"<span style="color: #000000;">;</span><span style="color: #008080;">16</span> <span style="color: #800080;">$result</span> = <span style="color: #008080;">mysql_query</span>(<span style="color: #800080;">$sql</span>,<span style="color: #800080;">$link</span><span style="color: #000000;">);</span><span style="color: #008080;">17</span> <span style="color: #008000;">//</span><span style="color: #008000;">4.判断是否获取到要编辑的商品信息</span><span style="color: #008080;">18</span> <span style="color: #0000ff;">if</span>(<span style="color: #800080;">$result</span>&&<span style="color: #008080;">mysql_num_rows</span>(<span style="color: #800080;">$result</span>)>0<span style="color: #000000;">)</span><span style="color: #008080;">19</span> <span style="color: #000000;"> {</span><span style="color: #008080;">20</span> <span style="color: #800080;">$shop</span>=<span style="color: #008080;">mysql_fetch_assoc</span>(<span style="color: #800080;">$result</span>);<span style="color: #008000;">//</span><span style="color: #008000;">解析出要修改的商品信息</span><span style="color: #008080;">21</span> }<span style="color: #0000ff;">else</span><span style="color: #008080;">22</span> <span style="color: #000000;"> {</span><span style="color: #008080;">23</span> <span style="color: #0000ff;">die</span>("没有找到要修改的商品信息"<span style="color: #000000;">);</span><span style="color: #008080;">24</span> <span style="color: #000000;"> }</span><span style="color: #008080;">25</span> <span style="color: #008080;">26</span> ?><span style="color: #008080;">27</span> <h3>编辑商品信息</h3><span style="color: #008080;">28</span> <span style="color: #008080;">81</span> </center><span style="color: #008080;">82</span> <span style="color: #008080;">83</span>
- <span style="color: #008080;"> 1</span> <!--?<span style="color: #000000;"-->php<span style="color: #008080;"> 2</span> <span style="color: #008000;">//</span><span style="color: #008000;">公共函数库</span><span style="color: #008080;"> 3</span> <span style="color: #008080;"> 4</span> <span style="color: #008000;">/*</span><span style="color: #008080;"> 5</span> <span style="color: #008000;"> * 文件上传处理函数</span><span style="color: #008080;"> 6</span> <span style="color: #008000;"> * @param string filename 要上传的文件表单项名</span><span style="color: #008080;"> 7</span> <span style="color: #008000;"> * @param string $path 上传文件的保存路径</span><span style="color: #008080;"> 8</span> <span style="color: #008000;"> * @param array 允许的文件类型</span><span style="color: #008080;"> 9</span> <span style="color: #008000;"> * @return array 两个单元: ["error"] false:失败,ture:成功</span><span style="color: #008080;"> 10</span> <span style="color: #008000;"> * ["info"] 存放失败原因或成功的文件名</span><span style="color: #008080;"> 11</span> <span style="color: #008000;">*/</span><span style="color: #008080;"> 12</span> <span style="color: #008080;"> 13</span> <span style="color: #0000ff;">function</span> uploadFile(<span style="color: #800080;">$filename</span>,<span style="color: #800080;">$path</span>,<span style="color: #800080;">$typelist</span>=<span style="color: #0000ff;">null</span><span style="color: #000000;">)</span><span style="color: #008080;"> 14</span> <span style="color: #000000;">{</span><span style="color: #008080;"> 15</span> <span style="color: #008000;">//</span><span style="color: #008000;">1.获取上传文件的名字</span><span style="color: #008080;"> 16</span> <span style="color: #800080;">$upfile</span> = <span style="color: #800080;">$_FILES</span>[<span style="color: #800080;">$filename</span><span style="color: #000000;">];</span><span style="color: #008080;"> 17</span> <span style="color: #0000ff;">if</span>(<span style="color: #0000ff;">empty</span>(<span style="color: #800080;">$typelist</span><span style="color: #000000;">))</span><span style="color: #008080;"> 18</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 19</span> <span style="color: #800080;">$typelist</span>=<span style="color: #0000ff;">array</span>("image/gif","image/jpg","image/jpeg","image/png","image/pjpeg","image/x-png");<span style="color: #008000;">//</span><span style="color: #008000;">允许的文件类型</span><span style="color: #008080;"> 20</span> <span style="color: #000000;"> }</span><span style="color: #008080;"> 21</span> <span style="color: #800080;">$res</span>=<span style="color: #0000ff;">array</span>("error"=><span style="color: #0000ff;">false</span>);<span style="color: #008000;">//</span><span style="color: #008000;">存放返回的结果</span><span style="color: #008080;"> 22</span> <span style="color: #008000;"> //2.过滤上传文件的错误号</span><span style="color: #008080;"> 23</span> <span style="color: #0000ff;">if</span>(<span style="color: #800080;">$upfile</span>["error"]>0<span style="color: #000000;">)</span><span style="color: #008080;"> 24</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 25</span> <span style="color: #0000ff;">switch</span>(<span style="color: #800080;">$upfile</span>["error"<span style="color: #000000;">])</span><span style="color: #008080;"> 26</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 27</span> <span style="color: #0000ff;">case</span> 1:<span style="color: #008080;"> 28</span> <span style="color: #800080;">$res</span>["info"]="上传的文件超过了 php.ini中upload_max_filesize选项大小"<span style="color: #000000;">;</span><span style="color: #008080;"> 29</span> <span style="color: #0000ff;">break</span><span style="color: #000000;">;</span><span style="color: #008080;"> 30</span> <span style="color: #0000ff;">case</span> 2:<span style="color: #008080;"> 31</span> <span style="color: #800080;">$res</span>["info"]="上传文件的大小超过了HTML表单中MAX_FILE_SIZE选项"<span style="color: #000000;">;</span><span style="color: #008080;"> 32</span> <span style="color: #0000ff;">break</span><span style="color: #000000;">;</span><span style="color: #008080;"> 33</span> <span style="color: #0000ff;">case</span> 3:<span style="color: #008080;"> 34</span> <span style="color: #800080;">$res</span>["info"]="文件只有部分被上传"<span style="color: #000000;">;</span><span style="color: #008080;"> 35</span> <span style="color: #0000ff;">break</span><span style="color: #000000;">;</span><span style="color: #008080;"> 36</span> <span style="color: #0000ff;">case</span> 4:<span style="color: #008080;"> 37</span> <span style="color: #800080;">$res</span>["info"]="没有文件被上传"<span style="color: #000000;">;</span><span style="color: #008080;"> 38</span> <span style="color: #0000ff;">break</span><span style="color: #000000;">;</span><span style="color: #008080;"> 39</span> <span style="color: #0000ff;">case</span> 6:<span style="color: #008080;"> 40</span> <span style="color: #800080;">$res</span>["info"]="找不到临时文件夹"<span style="color: #000000;">;</span><span style="color: #008080;"> 41</span> <span style="color: #0000ff;">break</span><span style="color: #000000;">;</span><span style="color: #008080;"> 42</span> <span style="color: #0000ff;">case</span> 7:<span style="color: #008080;"> 43</span> <span style="color: #800080;">$res</span>["info"]="文件写入失败"<span style="color: #000000;">;</span><span style="color: #008080;"> 44</span> <span style="color: #0000ff;">break</span><span style="color: #000000;">;</span><span style="color: #008080;"> 45</span> <span style="color: #0000ff;">default</span>:<span style="color: #008080;"> 46</span> <span style="color: #800080;">$res</span>["info"]="未知错误!"<span style="color: #000000;">;</span><span style="color: #008080;"> 47</span> <span style="color: #0000ff;">break</span><span style="color: #000000;">;</span><span style="color: #008080;"> 48</span> <span style="color: #008080;"> 49</span> <span style="color: #000000;"> }</span><span style="color: #008080;"> 50</span> <span style="color: #0000ff;">return</span> <span style="color: #800080;">$res</span><span style="color: #000000;">;</span><span style="color: #008080;"> 51</span> <span style="color: #000000;"> }</span><span style="color: #008080;"> 52</span> <span style="color: #008000;">//</span><span style="color: #008000;">3.本次文件大小的限制</span><span style="color: #008080;"> 53</span> <span style="color: #0000ff;">if</span>(<span style="color: #800080;">$upfile</span>["size"]>1000000<span style="color: #000000;">)</span><span style="color: #008080;"> 54</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 55</span> <span style="color: #800080;">$res</span>["info"]="上传文件过大!"<span style="color: #000000;">;</span><span style="color: #008080;"> 56</span> <span style="color: #0000ff;">return</span> <span style="color: #800080;">$res</span><span style="color: #000000;">;</span><span style="color: #008080;"> 57</span> <span style="color: #000000;"> }</span><span style="color: #008080;"> 58</span> <span style="color: #008000;">//</span><span style="color: #008000;">4.过滤类型</span><span style="color: #008080;"> 59</span> <span style="color: #0000ff;">if</span>(!<span style="color: #008080;">in_array</span>(<span style="color: #800080;">$upfile</span>["type"],<span style="color: #800080;">$typelist</span><span style="color: #000000;">))</span><span style="color: #008080;"> 60</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 61</span> <span style="color: #800080;">$res</span>["info"]="上传类型不符!".<span style="color: #800080;">$upfile</span>["type"<span style="color: #000000;">];</span><span style="color: #008080;"> 62</span> <span style="color: #0000ff;">return</span> <span style="color: #800080;">$res</span><span style="color: #000000;">;</span><span style="color: #008080;"> 63</span> <span style="color: #000000;"> }</span><span style="color: #008080;"> 64</span> <span style="color: #008000;">//</span><span style="color: #008000;">5.初始化下信息(为图片产生一个随机的名字)</span><span style="color: #008080;"> 65</span> <span style="color: #800080;">$fileinfo</span> = <span style="color: #008080;">pathinfo</span>(<span style="color: #800080;">$upfile</span>["name"<span style="color: #000000;">]);</span><span style="color: #008080;"> 66</span> <span style="color: #0000ff;">do</span><span style="color: #008080;"> 67</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 68</span> <span style="color: #800080;">$newfile</span> = <span style="color: #008080;">date</span>("YmdHis").<span style="color: #008080;">rand</span>(1000,9999).".".<span style="color: #800080;">$fileinfo</span>["extension"];<span style="color: #008000;">//</span><span style="color: #008000;">随机产生名字</span><span style="color: #008080;"> 69</span> <span style="color: #008080;"> 70</span> }<span style="color: #0000ff;">while</span>(<span style="color: #008080;">file_exists</span>(<span style="color: #800080;">$newfile</span><span style="color: #000000;">));</span><span style="color: #008080;"> 71</span> <span style="color: #008000;">//</span><span style="color: #008000;">6.执行上传处理</span><span style="color: #008080;"> 72</span> <span style="color: #0000ff;">if</span>(<span style="color: #008080;">is_uploaded_file</span>(<span style="color: #800080;">$upfile</span>["tmp_name"<span style="color: #000000;">]))</span><span style="color: #008080;"> 73</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 74</span> <span style="color: #0000ff;">if</span>(<span style="color: #008080;">move_uploaded_file</span>(<span style="color: #800080;">$upfile</span>["tmp_name"],<span style="color: #800080;">$path</span>."/".<span style="color: #800080;">$newfile</span><span style="color: #000000;">))</span><span style="color: #008080;"> 75</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 76</span> <span style="color: #008000;">//</span><span style="color: #008000;">将上传成功后的文件名赋给返回数组</span><span style="color: #008080;"> 77</span> <span style="color: #800080;">$res</span>["info"]=<span style="color: #800080;">$newfile</span><span style="color: #000000;">;</span><span style="color: #008080;"> 78</span> <span style="color: #800080;">$res</span>["error"]=<span style="color: #0000ff;">true</span><span style="color: #000000;">;</span><span style="color: #008080;"> 79</span> <span style="color: #0000ff;">return</span> <span style="color: #800080;">$res</span><span style="color: #000000;">;</span><span style="color: #008080;"> 80</span> }<span style="color: #0000ff;">else</span><span style="color: #008080;"> 81</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 82</span> <span style="color: #800080;">$res</span>["info"]="上传文件失败!"<span style="color: #000000;">;</span><span style="color: #008080;"> 83</span> <span style="color: #000000;"> }</span><span style="color: #008080;"> 84</span> }<span style="color: #0000ff;">else</span><span style="color: #008080;"> 85</span> <span style="color: #000000;"> {</span><span style="color: #008080;"> 86</span> <span style="color: #800080;">$res</span>["info"]="不是一个上传的文件"<span style="color: #000000;">;</span><span style="color: #008080;"> 87</span> <span style="color: #000000;"> }</span><span style="color: #008080;"> 88</span> <span style="color: #0000ff;">return</span> <span style="color: #800080;">$res</span><span style="color: #000000;">;</span><span style="color: #008080;"> 89</span> <span style="color: #000000;">}</span><span style="color: #008080;"> 90</span> <span style="color: #008000;">//</span><span style="color: #008000;">==================================================</span><span style="color: #008080;"> 91</span> <span style="color: #008000;">/*</span><span style="color: #008080;"> 92</span> <span style="color: #008000;"> * <!-- </div-->
- <div class="">
- <ul class="m-news-opt fix">
- <li class="opt-item">
- <a href="/PHPjiqiao-129259.html" target="_blank"><p>< 上一篇</p><p class="ellipsis">PHP心得之-在kindeditor取得里面的textarea值</p></a>
- </li>
- <li class="opt-item ta-r">
- <a href="/PHPjiqiao-129261.html" target="_blank"><p>下一篇 ></p><p class="ellipsis">js克隆id对象后怎么修改id下子元素的id值</p></a>
- </li>
- </ul>
- </div>
- </span>