2109 8765 4321 0987 6543 2109 8765 4321 序号
#B 0000 0000 0000 0000 0000 0000 0000 0001 帖子被屏蔽
#B 0000 0000 0000 0000 0000 0000 0000 0010 帖子被警告
#B 0000 0000 0000 0000 0000 0000 0000 0100 帖子审核后再编辑标记,用于防止重复加分
#B 0000 0000 0000 0000 0000 0000 0000 1000 手机版发帖标示
#B 0000 0000 0000 0000 0000 0000 0001 0000 微博回流的帖子标记
#B 0000 0000 0000 0000 0000 0000 0010 0000 [手机]是否显示地理位置
#B 0000 0000 0000 0000 0000 0000 0100 0000 [手机]含手机录音
#B 0000 0000 0000 0000 0000 0000 1000 0000 [手机型号(联动)] 001(1):iOS
#B 0000 0000 0000 0000 0000 0001 0000 0000 [手机型号(联动)] 010(2):Android 011(3):WindowsPhone
#B 0000 0000 0000 0000 0000 0010 0000 0000 [手机型号(联动)] 100:
#B 0000 0000 0000 0000 0000 0100 0000 0000 标记水帖
数据字典forum_thread 的 status 字段备注
6543 2109 8765 4321 序号
#B 0000 0000 0000 0001 是否缓存帖子位置信息
#B 0000 0000 0000 0010 是否回帖只对管理人员和发帖者可见
#B 0000 0000 0000 0100 是否抢楼贴
#B 0000 0000 0000 1000 是否倒序查看回帖
#B 0000 0000 0001 0000 是否存在主题图章标志位
#B 0000 0000 0010 0000 回复是否通知作者
#B 0000 0000 0100 0000 是否需要推送到QQ空间
#B 0000 0000 1000 0000 是否需要推送到腾讯微博
#B 0000 0001 0000 0000 是否被收入专辑
#B 0000 0010 0000 0000 是否被转播
#B 0000 0100 0000 0000 [手机标识(联动)] 001(1):含手机文本
#B 0000 1000 0000 0000 [手机标识(联动)] 010(2):含地理位置 011(3):含手机照片
#B 0001 0000 0000 0000 [手机标识(联动)] 100(4):含手机录音
#B 0010 0000 0000 0000 是否成功推送到腾讯微博
通过php脚本来查找并替换mysql数据库中的文本
发现一个好东东,可以通过php脚本来查找并替换mysql数据库中的文本。
对需要从已有的数据库中替换旧网址的用户来说,比较简单、实用。
项目地址:https://code.launchpad.net/~sewmyheadon/mysql-search-replace/trunk
显示数据表
show tables;
显示数据表的字段详情
show fields from pro_userdata ;
DISCUZ!X3.2 升级后UCENTER、UC_SERVER正确密码却无法登录后台的解决方法
很多站长在把自己的网站升级到discuz!x3.2最新版本后,出现了ucenter和uc_server后台无法登录的问题,有些站长以为是密码不对了,或者是php虚拟主机的问题。其实不是的,而是最新版本的discuz出现的BUG导致我们无法登录,其实也就是cookie导致的。
解决办法很简单,如下:
在/uc_server/model 中找到admin.php
找到代码:
function adminbase() { parent::__construct(); this->cookie_status = 0;sid = this->cookie_status ? getgpc('sid', 'C') :rawurlencode(getgpc('sid', 'R'));this->sid = this->view->sid =this->sid_decode(sid) ?sid : '';
修改如下:
function adminbase() { parent::__construct(); this->cookie_status = isset(_COOKIE['sid']) ? 1 : 0; sid =this->cookie_status ? getgpc('sid', 'C') :rawurlencode(getgpc('sid', 'R')); this->sid =this->view->sid = this->sid_decode(sid) ? $sid : '';
正则判断电话号码
function isTelephone(phone)
{
return preg_match('/^((\\(?\\d{3,4}\\)?)|(\\d{3,4}-)?)\\d{7,8}/', $userphone);
}
巧用ecshop smarty中iteration
ecshop中的模板技术确实不错,ecshop的smarty也写的很好,foreach标签是ecshop中smarty用的最多的一个标签了。而foreach中的iteration非常有用。 iteration其实是foreach循环中的下标,而且从1开始.直接循环。所以在ecshop销售排行中,很多人用这个来区分销售的图标.他是foreach下name的键值.{foreach name=top_goods from=$top_goods item=goods}
<meta http-equiv=”Content-Type” content=”text ml; charset=gbk”>
<div class=”mod2″>
<h1><span class=”left”></span><span class=”right”></span>销售排行</h1>
<!– {foreach name=top_goods from=$top_goods item=goods}–>
<ul class=”top10 clearfix”>
<li><img src=”../images/top_{$smarty.foreach.top_goods.iteration}.gif” class=”iteration” />
<!– {if $smarty.foreach.top_goods.iteration<2}–>
<table width=”185″ border=”0″>
<tr>
<td><a href=”{goods.url}” target=”_blank”><img src=”{goods.thumb}” alt=”{$goods.name|escape:html}” class=”topimg” height=”80px” width=”80px” /></a></td>
<td>售价:<font class=”f1″>{$goods.price}</font></td>
</tr>
</table>
<!– {/if} –>
<{if $smarty.foreach.top_goods.iteration<4}class=”iteration1″{/if}>
<a href=”{goods.url}” title=”{goods.name|escape:html}” target=”_blank”>{$goods.short_name}</a><br />
< >
<div></div>
</ul>
<!– {/foreach} –>
</div>
这个是ecshop销售排行的模板,他通过巧妙使用foreach来实现了图标的对应.><img src=”../images/top_{$smarty.foreach.top_goods.iteration}.gif” class=”iteration” />
ShopNC B2B2C最新版 隐藏SHOP和去除shop方法
方法一:shopwwi.com运维提供
这个方法我想大家都知道!就是传统的官方所教导的方法!就是域名绑定目录法!shoshopwwi.com运维提供pwwi.com运维提供
1.将www.shopwwi.com绑定根目录下的shop目录!shopwwi.com运维提供shopwwi.com运维提供
2.根目录可以用根域名shopwwi.com绑定!shopshshopwwi.com运维提供opwwi.com运维提供wwi.com运维提供
3.其他文件夹也绑定*.shopwwi.com!前缀自己想!sshopwwi.com运维提供hopwwi.com运维提供
4.绑定完目录之后!然后修改config.ini.php里的对应绑定域名shopwwi.com运维提供shopwwi.com运维提供
此为方法一:有点确实去除了shop!但是当用二级域名访问店铺的时候!依然后缀会出现shop!无解!sshopwwi.com运维提供hopwwi.com运维提供
注意:shopwwi.com换成自己的域名!不要挑刺!shopwwi.com运维提供
shopwwi.com运维提供
方法二:
shopwwi.com运维提供
此方法修改起来较费时费力!因此我尽量说的详细一点!shopwwi.com运维提供
shopwwi.com运维提供
为了能够使www域名能够够完善的使用!请按以下步骤一步一步来!shopwwi.com运维提供
shopwwi.com运维提供
1.转移shop下目录文件至根目录shopwwi.com运维提供
2.修改config.ini.php里的shop绑定域名更改为无shop目录shopwwi.com运维提供
3.将原始根目录的index.php更改为main.php文件名自己定!并修改index.php代码(index.php=main.php的情况下按以下修改!你改成啥main.php就是啥):shopwwi.com运维提供
- $site_url = strtolower(‘http://’.$_SERVER[‘HTTP_HOST’].substr($_SERVER[‘PHP_SELF’], 0, strrpos($_SERVER[‘PHP_SELF’], ‘/index.php’)).’/shop/index.php’);
- @header(‘Location: ‘.$site_url);
复制代码
修改为shopwwi.com运维提供
- $site_url = strtolower(‘http://’.$_SERVER[‘HTTP_HOST’].substr($_SERVER[‘PHP_SELF’], 0, strrpos($_SERVER[‘PHP_SELF’], ‘/main.php’)).’/index.php’);
- @header(‘Location: ‘.$site_url);
复制代码
4.打开shop下的index.php也就是现在转移到跟目录下的index.php找到以下代码
- if (!@include(dirname(dirname(__FILE__)).’/global.php’)) exit(‘global.php isn\’t exists!’);
复制代码
修改为
- if (!@include(dirname(__FILE__)).’/global.php’) exit(‘global.php isn\’t exists!’);
复制代码
5.是不是觉得很简单 想问我还有没有其他操作的 我想说的是 没了!就这些shop
php中实现可以返回多个值的函数实例
在python和golang中都有一个函数同时返回多个值的方法,其实php也可以,但相比python和golang要稍微麻烦一点,下面是一个简单的演示范例,这里用到了list函数
<?php function retrieve_user_profile() { user[] = "Jason"; user[] = "jb51.net"; user[] = "English"; returnuser; } list(name,email,language) = retrieve_user_profile(); echo "Name:name, email: email, preferred language:language"; ?>
discuz论坛注册用户名长度修改
找到下面三个文件,Ucenter下model文件夹中user.php、Discuz下uc_client/model文件夹中user.php、DEDECMS下uc_client/model文件夹中user.php,使用文本编辑工具打开,找到以“if(len”开头的验证用户名长度和是否含有敏感字符的代码,Ucenter、Discuz和DEDECMS5中是if(len > 15 || $len < 3,就是用户名不大于15不小于3,UCHOME中是if($len > 10 || $len < 3,用户名不小于3不大于10,将这些数字改成您需要的数字,我设置的是不大于20不小于3(也就是说UTF8版下注册用户名不超过6个汉字)。 注意:这个设置的值是英文字符长度,如果是utf版,每中文字符占用3,gbk版每字符占用2。 修改数据库: 将Discuz、Ucenter、UCHOME三个的数据库member数据表[Username]字段的长度修改为上面设置的数字,如20,DEDECMS不需要设置,默认就是20.
ThinkPHP框架使用Smarty模板引擎
最近公司使用ThinkPHP框架,所以比较关注,想到之前公司使用的框架用的模板引擎是 Smarty,而且用的还挺顺手的。
转到使用ThinkPHP自带的模板引擎还有点不习惯,所以在想换成Smarty模板引擎,网上看了一下,结果还是比较简单。
以此记录一下
首先ThinkPHP框架里面要有Smarty扩展 位置在 ThinkPHP\Extend\Vendor\Smarty ,如果没有就去 Smarty官网下一个最新版吧,也推荐使用最新版的。一般完整版的ThinkPHP框架都含有 Smarty扩展的。
然后只需修改配置文件 Conf\config.php
<?php return array( //'配置项'=>'配置值' 'TMPL_ENGINE_TYPE' => 'Smarty', 'TMPL_ENGINE_CONFIG' => array( 'caching' => TRUE, 'template_dir' => TMPL_PATH, 'compile_dir' => TEMP_PATH, 'cache_dir' => CACHE_PATH, 'left_delimiter' => '{', 'right_delimiter' => '}', ), ); ?>
Action:
1
2
3
4
5
6
7
8
9
10
|
<?php class IndexAction extends Action { public function index(){ $data = array ( 'asdf' => 1, 'dfg' => 2, 'asdfrg' => 3, 'yhnfd' => 4, 'bfws' => 1 ); $this ->assign( 'test' , $data ); $this ->display(); } } |
html:
1
2
3
4
5
|
{ $smarty .now} <br /> { foreach $test as $key => $data } { $key }:{ $data }<br /> {/ foreach } |
最后输出:
1411459827
asdf:1
dfg:2
asdfrg:3
yhnfd:4
bfws:1
yes,这样就搞定了,使用Smarty模板就这么简单