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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[经验] 【MFyoyo】康盛插件制作教程之:手把手教你写推送代码,简单易懂。

[复制链接]
MFyoyo.. 发表于 2009-11-26 03:50:52 | 显示全部楼层 |阅读模式
UCHome插件
语言编码: GBK简体 UTF8简体 BIG5繁体 
插件名称: 代码教程
插件作者: 康盛
适用版本: UCHome 2.0
本帖最后由 MFyoyo.. 于 2009-11-26 04:05 编辑

(有钱的给点金币,小弟穷,赚点本钱,下面有附件)今天受人之托来研究一下植物大战僵尸游戏的整合,这个游戏我下载看了一下,我开始还以为是PHP+MYSQL+XML+AS形式的,结果下载下来才看到是XML+AS3的;本来以为用FLASH修改大师找出变量,写出一个PHP传值也许就能成功,结果我却忘记了AS3是不能被编辑的。并且全英文,小弟不才,不认几个,官方给的解说也只读懂一点点。随后我便研究了用XML做功夫,用XML来连接数据库看是否奏效,便寻找全局变量中代表的积分、关卡等,但最后由于小弟不才,对于AS不是很在行,最后以失败告终。对于论坛已有人发布整合,我也未下载做测试,但是根据会员的回帖似乎只是加了推送功能而已。
    借这个机会我来讲解一下推送是如何做的,并且也许很多会员也需要为自己的插件加上推送(有些插件没有加上推送,或者有些会员在进入某个页面的时候需要推送功能,所以在这里用最简单的一种来实现推送),首先需要建立一个PHP文件,PHP文件的开头和末尾是这样的:
  1. <?php
  2. //这里写上你的PHP代码
  3. ?>
复制代码
然后规定好PHP格式以后,我们就来写推送的功能,对于PHP语言来讲
  1. {
  2. }
复制代码
符号是必不可少的,因为这2个符号可以看做是执行,反正根据自己意思理解吧,反正我一直理解为执行。
首先我们必须的加上这个代码才能保证你的插件能够运行
  1. include_once('./common.php');
复制代码
然后当然我们需要判断用户是否登录,若没有登陆则不能执行下面的动作。这段代码是这样的:
  1. if ( empty( $_SGLOBAL['supe_uid'] ) )
  2. {
  3.                                 showmessage( "请先登录后,再访问", "do.php?ac=login" );
  4. }
复制代码
其中的:
  1. if ( empty( $_SGLOBAL['supe_uid'] ) )
复制代码
代表的如果用户为空(我是这样理解,因为用户为空,则可视为没有登录)
便执行:
  1. {
  2.                                 showmessage( "请先登录后,再访问", "do.php?ac=login" );
  3. }
复制代码
这样运行这个文件的权限我们就加好了,接下一步我们就是来做推送。
再上面权限代码的后面加上
  1.         include_once( S_ROOT."./source/function_cp.php" );
复制代码
其中include_once()的意思是执行的时候运行并包括所给的文件,这里我们用到的就是推送的文件是function_cp.php
接下来我们进行推送的设置,首先当然是给推送前面加一个图标,代码如下:
  1. $icon = "*.gif/*.jpg";
复制代码
这个图片你必须保存在IMAGE/APP当中,并且以gif或者jpg为图片格式。
然后我们开始写上推送文字:比如
  1. $title_template = "{actor} 进入了<a href="pzv.php">植物大战僵尸 </a> ,赶快去瞧瞧吧!";
复制代码
其中的:{actor} 是用户名,其余按照HTM格式书写就行了,不过只是在连接的地方改为PHP形式就可以了。
然后我们需要把上面的变量套(我是这样理解的)进去,所以我们就写上代码:
  1. feed_add( $icon, $title_template );
复制代码
然后我再需要用array()函数来创建数组,我也不好解释上面意思,按照这个格式你就没有问题了,如下:
  1. $_TPL['titles'] = array(
  2.                                 $space['username'],
  3.                                 "植物大战僵尸"
  4. );
复制代码
当然,我们的PHP文件只是一个动态文件,你需要进入一个页面来触发这个推送,或者是你的PHP代码写好了,需要用一套模板来展示,我们就需要用套模板(我这么喊了,其他人别介意)。代码如
  1. include( template( "pzv" ) );
复制代码
其中的PZV就是你使用模板下的pzv.htm文件。
这样你的推送就完成了,把这段代码加入到PHP标准的格式当中就完成了一个简单的推送这个动作。

附:刚才加好的全部PHP代码:
  1. <?php


  2. include_once( "./common.php" );
  3. if ( empty( $_SGLOBAL['supe_uid'] ) )
  4. {
  5.                                 showmessage( "请先登录后,再访问", "do.php?ac=login" );
  6. }
  7. {
  8.                                 include_once( S_ROOT."./source/function_cp.php" );
  9.                                 $icon = "pzv";
  10.                                 $title_template = "{actor}进入了<a href="pvz.php">植物大战僵尸 </a>,赶快去瞧瞧吧!";
  11.                                
  12.                                 feed_add( $icon, $title_template );
  13. }
  14. $_TPL['titles'] = array(
  15.                                 $space['username'],
  16.                                 "植物大战僵尸"
  17. );
  18. include( template( "pzv" ) );

  19. ?>
复制代码
  这样我们就完成了一个完整的简单的推送,当然你可以按照自己的需要增加一些的变量,或者改变一下书写结构,这个书写结构式最易懂的,希望草根站长能够学会。

教程链接:
【MFyoyo教程一】很无聊,发一个文本框需要的一个背景提示:https://discuz.dismall.com/thread-1492164-1-1.html
【草根基本常识】基本的修改模板方法并提供几个常用代码    :https://discuz.dismall.com/thread-1485295-1-1.html
【MFyoyo】利用JS为UCHOME增加类似于网上银行登陆的密码安全体系:https://discuz.dismall.com/thread-1485270-1-1.html

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
纽币 发表于 2009-11-26 04:45:06 | 显示全部楼层
好贴没人顶,真是看不懂
回复

使用道具 举报

sam山姆 发表于 2009-11-26 05:10:59 | 显示全部楼层
帮顶~!!~!
回复

使用道具 举报

 楼主| MFyoyo.. 发表于 2009-11-26 05:29:36 | 显示全部楼层
睡觉咯,明天还有课。
回复

使用道具 举报

 楼主| MFyoyo.. 发表于 2009-11-26 14:50:46 | 显示全部楼层
我倒,看贴回贴阿。永远都是伸手党,只要不学。。。
回复

使用道具 举报

 楼主| MFyoyo.. 发表于 2009-11-26 14:51:11 | 显示全部楼层
我倒,看贴回贴阿。永远都是伸手党,只要插件,不学做插件。。。
回复

使用道具 举报

Imabird 发表于 2009-11-26 14:57:46 | 显示全部楼层
.
回复

使用道具 举报

 楼主| MFyoyo.. 发表于 2009-11-26 16:38:14 | 显示全部楼层
没人。。。。。
回复

使用道具 举报

Storys 发表于 2009-11-26 16:48:11 | 显示全部楼层
简单易懂,能出一系列教程就好了
回复

使用道具 举报

pea8946 发表于 2009-11-26 16:54:16 | 显示全部楼层
.
Imabird 发表于 2009-11-26 14:57



    我引用.
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-15 02:02 , Processed in 0.053920 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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