找回密码
 立即注册
即日起,论坛关闭新用户注册和登录,论坛相关的贴子保留查阅和下载。获得授权后,有技术问题可联系微信 13199509559 一对一解决。 2024-3-12
查看: 18187|回复: 13
打印 上一主题 下一主题

[V1.x问题求助] 循环中加循环的总计数怎么解决呢?

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
跳转到指定楼层
1#
voiphao 发表于 2016-4-6 16:03:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提交问题
提示:: 认真添写下面选项,不然无法判断你的问题
运行环境: 虚拟主机
运行服务器: linux
PHP版本: 4
OurPHP版本: 11
编辑器: 专用的PHP编辑器
程序存放目录: 根目录
这么一段循环加循环的代码:         [.sql mysql="select id,OP_Uid,OP_Lang,OP_Img,OP_Columntitle from `ourphp_column` where `OP_Uid` LIKE '$name' limit 0,10" name="sql".]
                 [.assign var="bname" value=$sql.id.]
                 [.ourphp form="product" row="4" lang="cn" id="0" type="0" sql="&&`OP_Class` = $bname" name="ourphp".]

                         <div class="ad[.$ourphp.i.]"> <a target="_blank" href="[.$ourphp.url.]" title="[.$ourphp.title.][.$sql.i.][.$ourphp.i.]"><img src="[.$ourphp.minimg.]" alt="[.$ourphp.title.]"/></a> </div>

                   [./ourphp.]
          [./sql.]

调用的是4个产品的图,假如有3个栏目,[.$SQL.i.]分别是1/2/3,假如每个栏目下面有3款产品,[.$ourphp.i.]则是1/2/3被执行3次,这段代码则会调出12款产品,我需要的是调出总数为4款产品,请问该怎么加个总数变量呢?求解答。

222

主题

222

主题

222

主题

管理员

Rank: 9Rank: 9Rank: 9

积分
0
2#
admin 发表于 2016-4-6 16:10:45 | 只看该作者
多看看教程
如果我没理解错
你想要的效果应该是这样
http://www.ourphp.net/club/forum ... &extra=page%3D2

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
3#
 楼主| voiphao 发表于 2016-4-6 16:12:42 | 只看该作者
上面(这段代码则会调出12款产品)改为  这段代码则会调出9款产品,3*3=9

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
4#
 楼主| voiphao 发表于 2016-4-6 16:18:34 | 只看该作者
不是的,我要的效果是调出总数4款产品,按你刚才的教程也是这样的,假如一个栏目下面有4个分栏目,每个分栏目下面有3款产品,按这样调用会出现12款产品,假如刚好第一个分栏目里有4款产品,假如每个分栏目下都有4个或以上的产品,则会调出16个产品。我的问题是如何控制总数,大栏目下共调出4款产品。

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
5#
 楼主| voiphao 发表于 2016-4-6 16:27:42 | 只看该作者
技术员,你们好,看下效果你们就知道了。http://www.gfjjc.cn/?cn-shop.html

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
6#
 楼主| voiphao 发表于 2016-4-6 16:32:22 | 只看该作者
<div class="ad[.$ourphp.i.]"> <a target="_blank" href="[.$ourphp.url.]" title="[.$ourphp.title.][.$sql.i.][.$ourphp.i.]"><img src="[.$ourphp.minimg.]" alt="[.$ourphp.title.]"/></a> </div>
因为我代码里面的位置 class="ad[.$ourphp.i.]"了,显示3个图的这份,总产品肯定是达到4个的,我的意思是怎么样加个总数的[.$???.i.]

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
7#
 楼主| voiphao 发表于 2016-4-6 16:41:30 | 只看该作者
第一张图为什么刚好是四张图呢。因为刚好四款产品都在一个分类下面,就正常了。要是一个分类下有2个,还有一个分类下有2个,其他分类没有的话,就会出现图上只有2款产品。但查看源代码是调出了4张图,因为位置都定在1和2了。

222

主题

222

主题

222

主题

管理员

Rank: 9Rank: 9Rank: 9

积分
0
8#
admin 发表于 2016-4-7 08:02:39 | 只看该作者
我给你的教程是指
循环出栏目和栏目下的产品

[.callcolumn id="11" row="20" lang="cn" type="td" name="callcolumn".]   //这一步是调用栏目
<a href="[.$callcolumn.url.]" id="t[.$callcolumn.i.]">[.$callcolumn.title.]</a> //这里是显示栏目名称

[.assign var="name" value=$callcolumn.id.] //这里把栏目ID调用出来 并转化为变量
[.ourphp form="product" row="4" lang="cn" id="0" type="op" sql="&&`OP_Class` = $name" name="ourphp".] //这里我们用万能标签 读取栏目ID下的记录注意看的是红色部份.在万网标签上 增加了一个sql的指命,并把sql的条件语言加上.
<li><a href="[.$ourphp.url.]" title="[.$ourphp.title.]"><img src="[.$ourphp.minimg.]" width="240" height="190" /></a></li>
[./ourphp.]

[./callcolumn.]

callcolumn id="11" 调用ID=11的那个栏目
[.ourphp form="product" row="4"  row 表示 显示该栏目下的4条信息

你用的 SQL
[.sql mysql="select id,OP_Uid,OP_Lang,OP_Img,OP_Columntitle from `ourphp_column` where `OP_Uid` LIKE '$name' limit 0,10" name="sql".]
我不知道是在哪学习来的
where `OP_Uid` LIKE '$name' limit 0,10

`OP_Uid` LIKE '$name'  这是什么意思? 他的作用是什么?  明显的你语句有问题中啊

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
9#
 楼主| voiphao 发表于 2016-4-7 11:38:14 | 只看该作者
[.callcolumn id="2" row="17" lang="cn" type="td" name="callcolumn".]

        <li class="top-item">
     <em class="flag flag[.$callcolumn.i.]"></em>       
        <span class="txt"><a title="[.$callcolumn.title.]" target="_blank" class="txt" href="[.$callcolumn.url.]">[.$callcolumn.title.]</a></span>
                          <div class="sub">
                                                        <div class="title clearfix">
                                                       <h4 class="kafeise">[.$callcolumn.title.](品牌如下)<span class="darrow">&gt;&gt;&gt;</span></h4>

                                                      <div class="list clearfix">
                                                                                               
                                    [.assign var="name" value=$callcolumn.id.]
                                    [.sql mysql="select id,OP_Uid,OP_Lang,OP_Img,OP_Columntitle from `ourphp_column` where `OP_Uid` LIKE '$name' limit 0,10" name="sql".]
                                        <a title="[.$sql.OP_Columntitle.]" target="_blank" class="sub-item" href="/?cn-product-[.$sql.id.].html" style="">[.$sql.OP_Columntitle.]</a>
                                    [./sql.]
                                                                                       
                                                            </div>
                                   
                                    [.sql mysql="select id,OP_Uid,OP_Lang,OP_Img,OP_Columntitle from `ourphp_column` where `OP_Uid` LIKE '$name' limit 0,10" name="sql".]
                                       
                                        [.assign var="bname" value=$sql.id.]
                                        [.ourphp form="product" row="4" lang="cn" id="0" type="0" sql="&&`OP_Class` = $bname" name="ourphp".]
                                       
                                                                        <div class="ad[.$ourphp.i.]"> <a target="_blank" href="[.$ourphp.url.]" title="[.$ourphp.title.][.$sql.i.][.$ourphp.i.]"><img src="[.$ourphp.minimg.]" alt="[.$ourphp.title.]"/></a>
                                                                        </div>

                                        [./ourphp.]

                                    [./sql.]
                                  
                                                    </div>
                           </div>               

    </li>
[./callcolumn.]

这部分的完整代码是这样的,因为有三级循环,中间一级只能用SQL万能的,要不然调不出来。

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
10#
 楼主| voiphao 发表于 2016-4-7 11:41:27 | 只看该作者
我的意思能不能在循环前加一个变量,调出一个产品就变量加1,按总数来控制。
[.$zsi = 0.]  循环前定义为零
[.$zsi == $zsi + 1 .]  调出一个产品就加1,


我试过了这样不行,[.$zsi = 0.]都为0

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
11#
 楼主| voiphao 发表于 2016-4-7 12:26:58 | 只看该作者
哈哈,我已经解决了。[.$zsi == $zsi + 1 .] 改成 [.$zsi = $zsi + 1 .] ,就可以了。

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
12#
 楼主| voiphao 发表于 2016-4-7 12:31:18 | 只看该作者
                                                            </div>
                                    [.$zsi = 0.]
                                    [.sql mysql="select id,OP_Uid,OP_Lang,OP_Img,OP_Columntitle from `ourphp_column` where `OP_Uid` LIKE '$name' limit 0,10" name="sql".]
                                       
                                        [.assign var="bname" value=$sql.id.]
                                        [.ourphp form="product" row="4" lang="cn" id="0" type="0" sql="&&`OP_Class` = $bname" name="ourphp".]
                                          [.$zsi = $zsi + 1 .]
                                                                                  
                                                                                     [.if $zsi<5.]
                                                                             <div class="ad[.$zsi.]"> <a target="_blank" href="[.$ourphp.url.]" title="[.$zsi.][.$ourphp.title.][.$sql.i.][.$ourphp.i.]"><img src="[.$ourphp.minimg.]" alt="[.$ourphp.title.]"/></a></div>
                                                                                         [.else.]
                                             [./if.]       
                                                                                          
                                        [./ourphp.]

                                    [./sql.]
                                  
                                                    </div>
这样就完美解决了。

1

主题

1

主题

1

主题

开发者

Rank: 7Rank: 7Rank: 7

积分
123
QQ
13#
 楼主| voiphao 发表于 2016-4-7 12:49:55 | 只看该作者
http://www.gfjjc.cn/?cn-shop.html 上传好了,一切OK了,每个栏目都有4个,不会多不会少了。

222

主题

222

主题

222

主题

管理员

Rank: 9Rank: 9Rank: 9

积分
0
14#
admin 发表于 2016-4-7 13:15:18 | 只看该作者
你搞的太麻烦了
三级循环
你只需要 调用第二级和第三级就行了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表