首页
关于本站
网站模板
代码教程
Emlog教程
米拓教程
SEO优化教程
Ecshop教程
zblog教程
Excel技巧
电脑软件教程
互联网
免费资源
网络新闻
留言咨询
在线问答
申请友链
网址导航
联系舍力
搜索
舍力
登录
搜索
舍力
静以修身。
累计撰写
1140
篇文章
累计收到
3549
条评论
首页
栏目
首页
关于本站
网站模板
代码教程
Emlog教程
米拓教程
SEO优化教程
Ecshop教程
zblog教程
Excel技巧
电脑软件教程
互联网
免费资源
网络新闻
留言咨询
在线问答
申请友链
网址导航
联系舍力
代码教程
2016-11-8
emlog博客程序判断插件是否安装并启用的方法
在制作模板的时候,可能会用到一些特定的插件,如果使用者不安装插件的话,会造成模板无法使用,所以想弄个提示使用者安装插件并启用,代码如下: <?php if(!function_exists('插件的标签')){emMsg('XX插件未安装或者未启用', BLOG_URL.'admin/plugin.php');}?> 上面这一段函数的效果是需要知道插件的标签,如果实现不知道插件标签,还可以用以下代码来实现<?php $DB = MySql::getInstance();$slsql = $DB->query("SELECT * FROM ".DB_PREFIX."options WHERE option_value like '%插件名称%'"); if($DB->num_rows($slsql) < 0){emMsg('XX插件未安装或者未启用', BLOG_URL.'admin/plugin.php');}?>
2016年11月8日
8434 阅读
1 评论
Emlog教程
2016-11-8
PHP实现简单实用的分页类代码
这篇文章主要介绍了PHP实现简单实用的分页类代码,结合实例形式分析了PHP分页类的定义与使用技巧,非常简单实用,需要的朋友可以参考下 $pageSize = 30; $result=mysql_query("select * from ".DB_PREFIX."数据库表");//查询总页数 $totalNum = mysql_num_rows($result); //数据总条数 $totalPageCount = ceil($totalNum/$pageSize); //总页数 $nowPage = isset($_GET) ? intval($_GET) : 1;//当前页码 $next = $nowPage+1;//下一页 $prev = $nowPage-1;//上一页 $url = "?plugin=sl_daohang&page="; $offset = ($nowPage-1)*$pageSize; //开始分页导航条代码: $pagefy = "<a href=\"".$url."1\">首页</a>";//首页 $pagefy.= ($prev <= 0 ) ? "" : " <a href=\"".$url.$prev."\">上一页</a>";//如果下一页大于总页数,则不显示 $pagefy.= ($next > $totalPageCount) ? "" : " <a href=\"".$url.$next."\">下一页</a>";//如果下一页大于总页数,则不显示 $pagefy.= " <a href=\"".$url.$totalPageCount."\">尾页</a>";//尾页 //下拉跳转列表,循环列出所有页码: $pagefy.=" 到第 <select name='topage' size='1' onchange='window.location=\"$url\"+this.value'>\n"; for($pagefor=1;$pagefor <= $totalPageCount;$pagefor++){ if($pagefor==$nowPage) $pagefy.="<option value='$pagefor' selected>$pagefor</option>\n"; else $pagefy.="<option value='$pagefor'>$pagefor</option>\n"; } $pagefy.="</select> 页,共 $totalPageCount 页"; //导航代码结束 调用代码:<?php echo $pagefy;?>
2016年11月8日
7304 阅读
0 评论
代码教程
2016-11-8
利用cookie应该可以实现php指定时间随机一次
在取出数据之后把数据缓存在客户端,然后cookie指定一个时间周期,在下次刷新时先判断这个cookie时间到期没,如果到期了就重新刷新,否则就调用本地缓存。以下是以emlog博客为案例的代码 <?php //载入全局加载项 require_once 'init.php'; //链接数据库 $DB = MySql::getInstance(); /*****************根据条件随机获取20条文章的GID***************/ $sql = "SELECT * FROM ".DB_PREFIX."blog ORDER BY rand() DESC LIMIT 20"; $list = $DB->query($sql); while($row = $DB->fetch_array($list)){ $arrgid.= $row.','; } $arrgid = substr($arrgid,0,strlen($arrgid)-1);//去除最后一个逗号 $arr = explode(",",$arrgid);//将获取的gid以逗号分割为数组 /***********函数,根据文章gid输出文章标题与连接**************/ function sylist($gid){ $DB = MySql::getInstance(); $sql = "SELECT * FROM ".DB_PREFIX."blog WHERE gid = '{$gid}'"; $list = $DB->query($sql); while($row = $DB->fetch_array($list)){ return '<li><a target="_blank" href="'.Url::log($row).'">'.$row.'</li>'; } } /***********根据cookie在指定时间内获取内容**************/ //判断cookie【gid】是否存在 if (isset($_COOKIE)){ //判断cookie【date】过期时间是否存在 if(isset($_COOKIE)){ echo '过期时间为:'.date("Y-m-d H:i:s", $_COOKIE).'<br/><br/>'; //判断时间是否过期,当前时间大于cookie【date】中储存的时间则为过期 if(time() > $_COOKIE){ //如果过期了,重新创建过期时间 setcookie("date", "", time()-3600);//删除过期时间 setcookie("date", time()+60*1,time()+3600);//重新创建过期时间,其中的60*1为一分钟 //刷新内容 setcookie("gid", "", time()-3600);//删除过期内容 setcookie("gid", $arrgid,time()+3600);//重新创建内容 } //输出内容 $arr = explode(",",$_COOKIE); //循环输出数组 foreach($arr as $value){ echo sylist($value); } }else{ //如果不存在,则创建一个距离当前时间一分钟的时间为过期时间 setcookie("date", time()+60*1,time()+3600);//其中的60*1为一分钟 //如果date不存在时则会输出空白,此时随机输出内容 foreach($arr as $value){ echo sylist($value); } } }else{ setcookie("date", time()+60*1,time()+3600);//其中的60*1为一分钟 setcookie("gid", $arrgid,time()+3600);//如果gid不存在,则创建gidcookie,内容为随机获取的文章gid //如果gid不存在时则会输出空白,此时随机输出内容 foreach($arr as $value){ echo sylist($value); } } ?> 本文代码由emlog学院陈子文提供,舍力仅作保存分享之用!代码演示请转到daohang.shuyong.net查看
2016年11月8日
13468 阅读
0 评论
Emlog教程
2016-10-29
Php连接及读取和写入mysql数据库的常用代码
既然现在你看到了这篇文章,说明你肯定知道PHP和MySQL是怎么一回事,我就不啰嗦了。但为什么你还要继续阅读此文呢?可能是以前你习惯复制粘贴一些代码,并没有真正弄懂代码的含义;也可能你以前弄懂了,但像我一样,有一段时间没有接触,生疏了;再或者,有人问你类似的简单问题,而你已经不屑于回答,直接上网搜索,恰好找到了这篇,于是就推荐给那谁谁谁了... 不管怎样,在这里我总结了常用的PHP连接MySQL数据库以及读取写入数据库的方法,希望能够帮到你,当然也是作为我自己的一个回顾总结。 1、为了更好地设置数据连接,一般会将数据连接所涉及的值定义成变量. $mysql_server_name='localhost'; //改成自己的mysql数据库服务器 $mysql_username='root'; //改成自己的mysql数据库用户名 $mysql_password='123456'; //改成自己的mysql数据库密码 $mysql_database='Mydb'; //改成自己的mysql数据库名 也可把以上变量放在一个文件里,可以随时让其他文件调用. 例如: 将以上内容放在:sl_config.php 那么在其他需要用到数据库的页面直接调用. 2、连接数据库 $conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password) or die("error connecting") ; //连接数据库 mysql_query("set names 'utf8'"); //数据库输出编码 mysql_select_db($mysql_database); //打开数据库 $sql ="select * from 数据库表名 "; //SQL语句 $result = mysql_query($sql,$conn); //查询 3、读取表中的内容,这里我们用while,可以根据具体情况,用for 或其他的. while($row = mysql_fetch_array($result)){echo $row;} 4、php写入数据库,Mysql数据的写入 $conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password); //连接数据库 mysql_query("set names 'utf8'"); //数据库输出编码 mysql_select_db($mysql_database); //打开数据库 $sql = "insert into messageboard (Topic,Content,Enabled,Date) values ('$Topic','$Content','1','2011-01-12')"; mysql_query($sql); mysql_close(); //关闭MySQL连接
2016年10月29日
8081 阅读
2 评论
代码教程
2016-10-26
PHP获取当前网页的标题和内容
有时候我们需要获取网页的标题与内容,就是个采集函数,这里简单分享下,方便需要的朋友,代码如下: $c = curl_init(); $url = 'www.shuyong.net'; curl_setopt($c, CURLOPT_URL, $url); curl_setopt($c, CURLOPT_RETURNTRANSFER, 1); $data = curl_exec($c); curl_close($c); $pos = strpos($data,'utf-8'); if($pos===false){$data = iconv("gbk","utf-8",$data);} preg_match("/<title>(.*)<\/title>/i",$data, $stitle); eregi("</head>(.*)</body>",$data,$sbody); $title = $stitle;//获取标题 $slbody = preg_replace(array("'<style(.*?)>(.*?)</style>'is","'<script(.*?)>(.*?)</script>'is","/<\/?+>/i"),'',$sbody);//获取纯文本内容
2016年10月26日
8267 阅读
0 评论
代码教程
2016-10-19
PHP获取网站百度搜索和搜狗搜索收录量代码分享
获取网站百度搜索和搜狗搜索的收录量代码,可以用于获取网站域名在搜索引擎的收录数量,一直想找这个API但没找到,就在网上找了个例子,学习修改了下,可以正常获取百度搜索和搜狗搜索的收录量了;原理是获取搜索引擎site:domain的结果数量,然后再抓取这个数量显示出来,有需要的就拿去吧。 <?php function baidu($url){ $baidu="http://www.baidu.com/s?wd=site:".$url; $site=file_get_contents($baidu); ereg("该网站共有(.*)个网页被百度收录", $site,$count); $count=str_replace("该网站共有","",$count); $count=str_replace("个网页被百度收录","",$count); $count=str_replace(",","",$count); $count=str_replace(" ","",$count); return strip_tags($count); } function sogou($url){ $sogou="http://www.sogou.com/web?query=site:".$url; $site=file_get_contents($sogou); ereg("找到约 (.*) 条结果", $site,$count); $count=str_replace("找到约","",$count); $count=str_replace("条结果","",$count); $count=str_replace(",","",$count); $count=str_replace(" ","",$count); return strip_tags($count); } ?> 调用代码:<?php echo baidu('www.shuyong.net');?> <?php echo sogou('www.shuyong.net');?>
2016年10月19日
10004 阅读
3 评论
Emlog教程
2016-10-19
一个简单的网址导航插件 - Emlog插件发布
闲来没事,捣鼓了一个Emlog网址导航插件,很简单的一个导航插件,功能不是很多,能管理网址,所有网址信息均写入数据库,避免数据丢失。后台演示效果图 1、下载本插件安装并启用本插件; 2、把插件中的daohang文件夹移动到根目录,导航网址为:http://www.shuyong.net/daohang; 3、插件漏洞反馈地址:http://www.shuyong.net/897.html 注意事项:如导航前台无法提交网址,请在把sl_daohang/sldh.js中var url = "";改为var url = "你的域名";请加http://并以“/”结尾 插件更新如下:(2016-10-28) 使用方法:把daohang文件放入到博客的根目录,其他的文件(sl_daohang、sl_daohangcs)放入博客的插件目录(即content/plugins下面),然后在后台插件中开启【网址导航插件】、【网址导航参数】2个插件即可 1、后台网址列表增加分页管理; 2、增加导航站参数设置编辑功能,可直接在后台进行操作; 使用方法请参考插件后台提示,如有疑问请在本页留言。 因插件太耗内存,已更改为模板形式,插件将不在更新,特此申明。 2017年2月28日 模板介绍地址:http://www.shuyong.net/423.html
2016年10月19日
18042 阅读
7 评论
Emlog教程
2016-10-17
Emlog后台登录页面美化分享
用Emlog博客程序有几年了,强迫症的我看默认风格后台登录页面就是有点不爽,舍力今天给大家分享下本人自用的登录页面,效果如下图: 用法很简单,下载的文件解压上传到根目录替换即可,如有疑问请在本页留言
2016年10月17日
13238 阅读
7 评论
Emlog教程
2016-9-19
Emlog发表时文章自定义参数插件
使用注意事项: 添加之前请阅读说明文档,并且标签不能相同,以免造成错误; 添加之后请务必不要删除或者修改标签(其他随意),以免造成以前信息不显示(如果不小心删除了,请重新添加或者修改回来); 温馨提示:新加入的字段,以前编辑过的文章会不显示,只需保存并返回后重新进入就显示了; 类型说明: 1、单行文本/多行文本:即为文字或者一些html代码,如果内容比较多的话,建议使用多行文本,多行文本标题将不在前台显示; 2、普通网址:前台直接显示网址地址并自动描文本; 3、下载地址/购买地址:前台显示下载图标/购买图标并描文本;注意:下载链接和购买地址最好只出现一次,前台将一行显示 4、不显示:将不会在内容中显示,主要用于文章SEO方面,例:如果要更改浏览器标题,则把模板文件header.php中title部分替换成 <title><?php if($logid){if(slzd($logid,$tag='logtt')){echo slzd($logid,$tag='logtt');}else{echo $log_title;}}else{echo $site_title;if($page>=2){echo ' - 第'.$page.'页';}}?></title> 以下标签不能使用,否则会自动替换数据:title、alias、template、content、token、ishide、author、tag、excerpt、logid、 top、sortop、allow_remark、allow_tb、password 本插件保存时将会自动清空插件字段中原有数据,请慎用保存功能,需要实现保存生效,可通过修改默认后台文件,找到根目录admin/views/js/common.js文件中 1、找到 var ishide = $.trim($("#ishide").val()); 后面加入代码 var 标签 = $.trim($("#标签").val()); 2、找到 +"&ishide="+ishide 后面加入代码 +"&标签="+标签 把标签替换你自己写的即可,以上均有2处需要添加,如有疑问本页留言 更新日志: 1、增加个图片显示,没有则不显示;(2016-9-24) 2、增加排序、在类型中加入下载地址、购买地址等选项(2016-9-26) 全部调用方法: echo_log.php调用 <?php doAction('zd_log',$logid);?> 单个调用方法:直接在对应页面需要的地方加入下面代码 1、echo_log.php调用 <?php echo slzd($logid,$tag='标签');?> 2、log_list.php调用 <?php echo slzd($value,$tag='标签');?>
2016年9月19日
14943 阅读
6 评论
Emlog教程
2016-9-1
JavaScript实现复制文章自动添加版权
自己辛辛苦苦写的文章,轻易就被别人复制-粘贴去了,是不是很伤心呢?舍力今天给大家整理了一个方法,让别人复制自己的文章时,自动在文章的结尾添加自己的版权信息。这是一个鸡肋的功能,在别人复制你网站内容时自动在复制内容后面添加上自己网站的名称和被复制内容当前页面的地址,说它鸡肋是因为在我们这样的网络里说版权有点让人害羞,百度打开搜索个东西,得到的结果常常是抄来抄去的,这种功能加不加其实起不到什么作用。 使用方法:将下面代码放入js中,并调用出来即可 $("body").bind('copy', function (e){if(typeof window.getSelection == "undefined") return;var body_element = document.getElementsByTagName('body');var selection = window.getSelection();if (("" + selection).length < 30) return;var newdiv = document.createElement('div');newdiv.style.position = 'absolute';newdiv.style.left = '-99999px';body_element.appendChild(newdiv);newdiv.appendChild(selection.getRangeAt(0).cloneContents());if(selection.getRangeAt(0).commonAncestorContainer.nodeName == "PRE"){newdiv.innerHTML = "<pre>" + newdiv.innerHTML + "</pre>";} newdiv.innerHTML += "<br /><br />原文地址:" + document.location.href + ""; selection.selectAllChildren(newdiv);window.setTimeout(function(){body_element.removeChild(newdiv);},200);});
2016年9月1日
9133 阅读
2 评论
代码教程
2016-8-31
教程:EMLOG博客非插件实现一键点赞功能介绍
本代码来源于网络,具体谁先写出来,舍力表示不知道,本站只做收集分享之用途,本人也不喜欢用插件,好了,废话不多说,下面舍力说说具体的操作方法 用法很简单,在module.php里面加如以下代码 <?php //点赞 function syzan(){ $DB = MySql::getInstance(); if($DB->num_rows($DB->query("show columns from ".DB_PREFIX."blog like 'slzan'")) == 0){ $sql = "ALTER TABLE ".DB_PREFIX."blog ADD slzan int unsigned NOT NULL DEFAULT '0'"; $DB->query($sql);}}syzan(); function update($logid){ $logid = intval($_POST); $DB = Database::getInstance(); $DB->query("UPDATE " . DB_PREFIX . "blog SET slzan=slzan+1 WHERE gid=$logid"); setcookie('slzanpd_'. $logid, 'true', time() + 31536000);} function lemoninit() {if( @$_POST == 'slzanpd' &&@$_POST == 'slzan' &&isset($_POST)){ $id = intval($_POST); header("Access-Control-Allow-Origin: *"); update($id);echo getnum($id);die;}}lemoninit(); function getnum($id){ static $arr = array(); $DB = Database::getInstance(); if(isset($arr)) return $arr; $sql = "SELECT slzan FROM " . DB_PREFIX . "blog WHERE gid=$id"; $res = $DB->query($sql); $row = $DB->fetch_array($res); $arr = intval($row); return $arr;} ?> 再在文章页加入以下代码,CSS自己搞定 <a class="slzanpd" data-slzanpd="<?php echo $logData;?>" title="喜欢这篇文章就赞一个吧!">赞 (<?php echo(isset($logData)?$logData:getnum($logData));?>次)</a> 再在你的JS文件里加上以下代码就OK了 $(document).on('click', '.slzanpd', function() { var a = $(this), id = a.data('slzanpd'); if (slzanpd_check(id)) { alert('您已赞过本文!'); } else { $.post('', { plugin: 'slzanpd', action: 'slzan', id: id }, function(b) { a.find('u').html(b); slzanpd_(a); }); } }); function slzanpd_check(id) { return new RegExp('slzanpd_' + id + '=true').test(document.cookie); } $('').each(function() { var a = $(this), id = a.data('slzanpd'); if (slzanpd_check(id)) { slzanpd_(a); } else { a.attr('title', '给舍力来点动力吧!') } }); function slzanpd_(a) { a.css('cursor', 'not-allowed').attr('title', '您已赞过本文!'); }
2016年8月31日
10760 阅读
1 评论
Emlog教程
2016-8-25
php小功能分享:自动将文字转化成图片代码
在图片上加文字是论坛,博客,新闻网站上最喜欢用的功能,防止盗图。这里看看代码是如何实现的。建立一个img.php的把下面代码放进去就搞定了 <?php header("Content-type: image/png"); mb_internal_encoding("UTF-8"); // 设置编码 function autowrap($fontsize, $angle, $fontface, $string, $width) { // 这几个变量分别是 字体大小, 角度, 字体名称, 字符串, 预设宽度 for($i=0;$i<mb_strlen($string);$i++){$letter = mb_substr($string, $i, 1);}foreach($letter as $l){$teststr = $content." ".$l;$testbox = imagettfbbox($fontsize, $angle, $fontface, $teststr);if (($testbox > $width) && ($content !== "")) {$content .= "\n";}$content .= $l;}return $content;} $bg = imagecreatetruecolor(750,200); // 创建画布 $white = imagecolorallocate($bg,255,255,255); // 创建白色 $text = "舍力博客承接Emlog模板定制/仿站、网站功能高仿、新增或修改Emlog等服务,本站提供最新的Emlog企业/CMS/博客模板、Emlog教程及网页脚本编程知识分享!"; $text = autowrap(10,0,"C:\Windows\Fonts\SIMSUN.TTC",$text,730); // 自动换行处理 imagettftext($bg,10,0,10,20,$white,"C:\Windows\Fonts\SIMSUN.TTC", $text); imagepng($bg); imagedestroy($bg); ?> 代码二 <?php $text="舍力博客";//显示的文字 $size=14;//字体大小 $font="C:\Windows\Fonts\SIMSUN.TTC";//字体类型,这里为黑体,具体请在windows/fonts文件夹中,找相应的font文件 $img=imagecreate(500,24);//创建一个长为500高为16的空白图片 imagecolorallocate($img,255,255,255);//设置图片背景颜色,这里背景颜色为#ffffff,也就是白色 $black=imagecolorallocate($img,255,0,0);//设置字体颜色,这里为#000000,也就是黑色 imagettftext($img,$size,0,0,16,$black,$font,$text);//将ttf文字写到图片中 header('Content-Type: image/png');//发送头信息 imagepng($img);//输出图片,输出png使用imagepng方法,输出gif使用imagegif方法 ?>
2016年8月25日
9683 阅读
0 评论
代码教程
9
10
11
12
13