热度 5 ||
这里比前面要复杂的是除了显示数据外,还要考虑如何处理用户提交的数据。我们看到
3 source\include\spacecp\spacecp_blog.php
3a 利用了函数source\function\function_blog.php (blog_post)
4 数据储存source\class\table\table_home_blog.php ( C::t('home_blog')->update 和 C::t('home_blog')->insert)
让我们具体来看看"不允许评论"这个选项的值是如何储存和提取,以及如何应用的。
1。在显示页template\home\spacecp_blog.htm里
<label><input type="checkbox" name="noreply" value="1" class="pc"{if $blog[noreply]} checked="checked"{/if}> {lang comments_not_allowed}</label>
$blogarr = array(
'subject' => $POST['subject'],
'classid' => $classid,
'friend' => $POST['friend'],
'password' => $POST['password'],
'noreply' => empty($POST['noreply'])?0:1,
'catid' => intval($POST['catid']),
'status' => $blog_status,
);
<!--{if $blog[friend] != 3 && !$blog[noreply]}-->
<div id="click_div">
<!--{template home/space_click}-->
</div>
<!--{/if}-->
目前"不允许评论"这个选项同时决定了读者是否能表态和是否能评论。HQ希望增加一个选项"不允许表态"来单独管理读者是否能表态。这需要做下列的改动:ALTER TABLE home_blog ADD noclick tinyint(1) NOT NULL DEFAULT '0';这里假定安装数据库时没有设置数据表名的前缀,不然在表名里得加上那个前缀。
<label><input type="checkbox" name="noclick" value="1" class="pc"{if $blog[noclick]} checked="checked"{/if}> 不允许表态</label>'noclick' => empty($POST['noclick'])?0:1,4。使用这个值来决定是否显示表态框,在template\default\home\space_blog_view.htm里将!$blog[noreply]}改为!$blog[noclick]}
<!--{if $blog[friend] != 3 && !$blog[noclick]}-->
<div id="click_div">
<!--{template home/space_click}-->
</div>
<!--{/if}-->
如果要将"不允许表态"的默认设置设为不允许表态的话,可以在source\include\spacecp\spacecp_blog.php里给新日志赋值:
if(empty($blog)) {
...
$blog['message'] = empty($_GET['message'])?'':getstr($_GET['message'], 5000);
后加
$blog['noclick'] = 1;
天香公主: 我不了解道具的机制,不过可以帮你查查问题所在。把你那个道具寄给我吧,还请告诉我要如何安装和使用它。
夙興夜寐罔徒勞: 前阵子写了个补签卡的道具【文件直接上传到ftp】,在试验网站上木有遇到问题,结果今天放到正式的网站时,上传后发现道具列表消失了。。。网上有相似的问题,但 ...

Powered by Discuz! X3.1
© 2001-2014 Comsenz Inc.
GMT-4, 2026-10-6 02:22 AM
, Processed in 0.030595 second(s), 22 queries.