Discuz!官方免费开源建站系统

 找回密码
 立即注册
搜索

[已答复] 100金币求助实现SS中首页调用论坛图片,每主题只调用一张图片

[复制链接]
 楼主| 瞬间的觉悟 发表于 2009-9-7 13:00:13 | 显示全部楼层
不是啊,帅哥,我原本就是这样的效果,现在想要达到的效果是每个帖子只调用一副图片,你看看,我这个图片,其实一个一个帖子里的。
回复

使用道具 举报

lidq.jingwu 发表于 2009-9-7 13:07:40 | 显示全部楼层
晕,如果调用论坛主题,且每个主题只调用一张图片,那么这里有些主题或帖子是没有图片的。
实现这种效果应该以调用主题为主,如果有图片,再查库,调用图片。
下面是我写的一段代码,已经给出了解释,能达到效果,但要做调整。
论坛主题图文混排:
论坛里面有很多的朋友想要实现论坛题的图文混排。
现给出如下代码,在实现的过程中用到两次数据调用,第一次调用论坛主题,第二次是调用图片。
用SQL来实现数据调用论坛主题的SQL:
SELECT * FROM d.cdb_threads
生成的调用代码:
<!--{block name="bbsthread" parameter="sql/SELECT%20%2A%20FROM%20d.cdb_threads/limit/0,10/cachetime/900/cachename/thread/tpl/data"}--><!--thread-->
然后将调用出来的数据循环,根据  attachment 字段的值来判断是否有图片。
有图片就再次查询附件表,并且是要接收程序中的变量,SQL如下:
select * from cdb_attachments where tid=$tid
生成的调用语句如下:
<!--{block name="bbsattachment" parameter="sql/SELECT%20%2A%20FROM%20d.cdb_attachments%20WHERE%20tid%3D%24tid/limit/0,10/cachetime/900/cachename/attach/tpl/data"}--><!--attach-->
修改后如下:
<!--{block name="bbsattachment" parameter="sql/SELECT%20%2A%20FROM%20d.cdb_attachments%20WHERE%20tid%3D$tid/limit/0,10/cachetime/900/cachename/attach/tpl/data"}--><!--attach-->
现给出代码如下:
<div>
<!--{block name="bbsthread" parameter="sql/SELECT%20%2A%20FROM%20d.cdb_threads/limit/0,10/cachetime/900/cachename/thread/tpl/data"}--><!--thread-->
{loop $_SBLOCK['thread'] $value}
        {if $value[attachment]>0}
                {eval $tid=$value[tid];}
                <!--{block name="bbsattachment" parameter="sql/SELECT%20%2A%20FROM%20d.cdb_attachments%20WHERE%20tid%3D$tid/limit/0,10/cachetime/900/cachename/attach/tpl/data"}--><!--attach-->
                {eval print_r($_SBLOCK['attach']);}
                {loop $_SBLOCK['attach'] $att}
                        {if $att[isimage]==1}
                                {eval $path=$att['attachment'];}
                        {else}
                                {eval $path="";}
                        {/if}
                {/loop}
        {else}
                {eval $path="";}
        {/if}
        <li><img src="$path"><span class="box_r"><a href="{S_URL}/space.php?uid=$value[authorid]">$value[author]</a></span><a href="$value[url]" title="$value[subjectall]">$value[subject]</a></li>
{/loop}
</div>
这里给出的代码只能显示图片,样式并没有调好,还要自己修改。
回复

使用道具 举报

 楼主| 瞬间的觉悟 发表于 2009-9-8 06:57:32 | 显示全部楼层
我想要个直接拿来就可以用的,会做的兄弟联系我,^_^。谢谢
回复

使用道具 举报

 楼主| 瞬间的觉悟 发表于 2009-9-9 23:05:53 | 显示全部楼层
郁闷的,还是搞不定啊,哪个帅哥能帮忙做下这个调用,谢谢了,100金币求助。
回复

使用道具 举报

 楼主| 瞬间的觉悟 发表于 2009-9-10 08:53:02 | 显示全部楼层
顶上去,继续求助。
回复

使用道具 举报

NT晚舟 发表于 2009-9-10 17:34:22 | 显示全部楼层
我也想要啊
回复

使用道具 举报

 楼主| 瞬间的觉悟 发表于 2009-9-10 22:10:29 | 显示全部楼层
还以为问题解决了,结果翻了半天,也是个求答案的,郁闷,哪个高手来给说下嘛,谢谢了。
回复

使用道具 举报

corelboy 发表于 2009-9-11 01:02:57 | 显示全部楼层
SELECT t.* , a.* FROM cdb_threads t,cdb_attachments a WHERE t.tid = a.tid AND a.isimage =1 AND t.fid =18 GROUP BY t.tid ORDER BY t.dateline DESC LIMIT 0 , 30

创建论坛主题模块 选择高级输入上面的sql 注意将t.fid = 换成你要调用版块的fid
在模板页使用<!--eval secho()-->语句检查一下输出 如果成功的话可以看到$value[attachement]字段的数据
回复

使用道具 举报

 楼主| 瞬间的觉悟 发表于 2009-9-11 06:01:47 | 显示全部楼层
我使用了,出现如下提示:
SQL: SELECT t.* , a.* FROM [Table]threads t,[Table]attachments a WHERE t.tid = a.tid AND a.isimage =1 AND t.fid =102,134,139,153,154,155,149,150,151 GROUP BY t.tid ORDER BY t.dateline DESC LIMIT 0,4
Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '134,139,153,154,155,149,150,151 GROUP BY t.tid ORDER BY t.dateline DESC LIMIT 0,' at line 1
Errno.: 1064
回复

使用道具 举报

corelboy 发表于 2009-9-11 11:29:21 | 显示全部楼层
t.fid =102,134,139,153,154,155,149,150,151写错了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-9-15 13:14 , Processed in 0.081973 second(s), 13 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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