DEDECMS小技巧,让未审核内容的更新时间为当前时间.先说下为什么会用到他,现在很多站长做站都是先采集N多内容,然后每天审核一部分,但是审核的时候,那个发布时间不是最新的,还要手动去修改,很麻烦,浪费我们的宝贵时间.下面提供两种方法解决这个问题.方法一,增加当前时间按钮,点击按钮后,更新时间自动变为当前时间.打开dede/templets/article_edit.htm找到发布时间:在下面的<?php$nowtime=GetDateTimeMk($arcRow["pubdate"]);echo"<inputname=\"pubdate\"value=\"$nowtime\"type=\"text\"id=\"pubdate\"style=\"width:200\">";?>后面增加<inputTYPE="button"value="当前时间"OnClick="document.form1.pubdate.value='<?phpecho$showtime=date("Y-m-dH:i:s");?>'"style="border:1pxsolid#ddd;background:#fff;"/>方法二,直接让pubdate发布时间输出框为当前的时间,连按钮都不用点了.找到<?php$nowtime=GetDateTimeMk($arcRow["pubdate"]);echo"<inputname=\"pubdate\"value=\"$nowtime\"type=\"text\"id=\"pubdate\"style=\"width:200\">";?>替换成<inputname="pubdate"value="<?phpecho$showtime=date("Y-m-dH:i:s");?>"type="text"id="pubdate"style="width:150">补充,审核状态同理,如果是我说的这类懒人兄弟,可以把审核状态也改下.转:http://www.poluoluo.com/zt/201104/113348.html
php获取url传递的id值:$id=$_GET['id'];php获取当前url:http://www.hack001.com/post/174php中函数function的使用:functiontitle(){.....代码return$head}return后加需要返回的值php判断url是否可以打开<?php$url="/upload/201110/20111008192257383.gif";$array=get_headers($url,1);if(preg_match('/200/',$array[0])){echo"<pre/>";print_r($array);}else{echo"无效url资源!";}?>php抓取指定网页全部代码<?php$url='http://www.baidu.com/';echofile_get_contents($url);?>PHP抓取修改替换<?$url='目标网址';$lines_array=file($url);$lines_string=implode('',$lines_array);eregi("抓取开始代码(.*)抓取结束代码",$lines_string,$head);$head=str_replace(array("删除字符1","删除字符2","删除字符3","删除字符4"),"",$head);$str=str_replace("查找代码1","替换代码1",$head[0]);$str=str_replace("查找代码2","替换代码2",$str);$str=str_replace("查找代码3","替换代码3",$str);echo$str;?>PHP正则表达式抓取网页<?$url='目标网址';$lines_array=file($url);$lines_string=implode('',$lines_array);eregi("抓取开始代码(.*)抓取结束代码",$lines_string,$head);$head=str_replace(array("删除字符1","删除字符2"),"",$head);$str3=preg_replace("(正则表达式查找)","正则表达式替换",$head[0]);echo$str3;?>php抓取页面并转编码<?php$url='http://www.kuang168.com/quote/';$lines_array=file($url);$lines_string=implode('',$lines_array);eregi("<divclass=\"subline\"><ul>(.*)</ul></div></td>",$lines_string,$head);$head=str_replace(array("<divclass=\"subline\"><ul>","</ul></div></td>","<spanclass=\"f_r\">","删除字符4"),"",$head);$str=str_replace("</span>"," ",$head[0]);$str=str_replace("查找代码2","替换代码2",$str);$str=str_replace("查找代码3","替换代码3",$str);$str=mb_convert_encoding($str,'utf8','gb2312');echo$str;?>调用这个文件:require_once()魔术常量(MagicConstants)简介:http://www.hack001.com/post/165dede数据库操作类:http://www.hack001.com/post/166dede自创标签:http://www.hack001.com/post/167php输出的几种方式:http://www.hack001.com/post/168php截取字符串:用到PHPexplode()函数http://www.w3school.com.cn/php/func_string_explode.aspdede的{dede:php}获取当前文章id{dede:php}$thisid=$refObj->Fields['id'];print_r($thisid);{/dede:php}php判断是否包含<?php$url="http://www.hack001.com/news/article_edit.php";if(strpos($url,"article_edit")>0){echo"包含";}?>php判断长度<?php$url='http://www.hack001.com/news/plus/view.php?aid=';echostrlen($url);?>php连接mssql,查询sql语句然后循环输出<?php$conn=mssql_connect("127.0.0.1","root","123456");mssql_select_db("sqldb");$sql="selecttop10h.BuildIDid,h.BuildNameloupan,a.AreaNamequyu,convert(int,h.BuildPrice)jiage,h.BuildKaipanDatekaipanshijianfromdbo.Ant_Areaa,dbo.Ant_HouseBuildhwhereh.BuildAreaID=a.AreaIDorderbyh.BuildIDdesc";$query=mssql_query($sql,$conn);while($row=mssql_fetch_array($query)){?><?=$row[loupan]?><?=$row[quyu]?><?=$row[jiage]?><?=$row[kaipanshijian]?><br><?}?><?mssql_close($conn);?>php显示错误有时候php只显示500错误,而不说哪个地方错了,需要看错误信息可以这样操作调试的时候把php.ini中的display_errors=Off改成On或者error_log=D:\Web\error.log在error.log中查看错误日志!
经常我们用虚拟主机在伪静态的时候常常不知道支不支持伪静态,所以放个伪静态测试文件方便自己,方便大家。测试1:RewriteRule^(.*)/tags\.html$1/tags\.php这句就等于访问/tags.html文件输出/tags.php测试2:RewriteRule^(.*)/tags/(.*)\.html$1/tags\.php?$2这句就等于访问:/tags/任意字符.html就输出/tags.php?任意字符如果是NginxRewrite的,那么可以这样写:比如想访问/jieli/jieli2.html,实际访问/jieli/p/?jieli2/,那么写法为:rewrite^/jieli/jieli2.html/jieli/p/?jieli2/last;
一、修改文件:\include\taglib目录下的channel.lib.php,请将以下代码全部复制替换上述文件<?phpfunctionlib_channel(&$ctag,&$refObj){global$_sys_globals,$envs,$dsql;$attlist="typeid|0,reid|0,row|100,col|1,type|son,currentstyle|";FillAttsDefault($ctag->CAttribute->Items,$attlist);extract($ctag->CAttribute->Items,EXTR_SKIP);$innertext=$ctag->GetInnerText();$cacheid=trim($cacheid);if($cacheid!=''){$likeType=GetCacheBlock($cacheid);if($likeType!='')return$likeType;}$reid=0;$topid=0;if(empty($typeid)&&$envs['typeid']!=0){$typeid=$envs['typeid'];$reid=$envs['reid'];}else{$reid=0;}if($type==''||$type=='sun')$type="son";if($innertext=='')$innertext=GetSysTemplets("channel_list.htm");if($reid==0&&$typeid>0){$dbrow=$dsql->GetOne("SelectreidFromdede_arctypewhereid='$typeid'");if(is_array($dbrow))$reid=$dbrow['reid'];}$likeType='';if($type=='top'){$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFromdede_arctypewherereid=0Andishidden<>1orderbysortrankasclimit0,$row";}elseif($type=="son"){//if($_sys_globals['typeid']>0)$typeid=$_sys_globals['typeid'];if($typeid==0){return'';}$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFromdede_arctypewherereid='$typeid'Andishidden<>1orderbysortrankasclimit0,$row";}elseif($type=="self"){if($reid==0){return'';}$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFrom`dede_arctype`wherereid='$reid'Andishidden<>1orderbysortrankasclimit0,$row";}//Andid<>'$typeid'$needRel=false;$dtp2=newDedeTagParse();$dtp2->SetNameSpace("field","[","]");$dtp2->LoadSource($innertext);$dsql2=clone$dsql;$dsql->SetQuery($sql);$dsql->Execute();$line=$row;//检查是否有子栏目,并返回rel提示(用于二级菜单)if(ereg(':rel',$innertext))$needRel=true;if(empty($sql))return'';$dsql->SetQuery($sql);$dsql->Execute();$totalRow=$dsql->GetTotalRow();$GLOBALS['autoindex']=0;for($i=0;$i<$line;$i++){if($col>1)$likeType.="<dl>\r\n";for($j=0;$j<$col;$j++){if($col>1)$likeType.="<dd>\r\n";if($row=$dsql->GetArray()){$row['sonids']=$row['rel']='';if($needRel){$row['sonids']=GetSonIds($row['id'],0,false);if($row['sonids']=='')$row['rel']='';else$row['rel']="rel='dropmenu{$row['id']}'";}//处理同级栏目中,当前栏目的样式if(($row['id']==$typeid||($topid==$row['id']&&$type=='top'))&&$currentstyle!=''){if($currentstyle!=''){$linkOkstr=$currentstyle;$row['typelink']=GetOneTypeUrlA($row);$linkOkstr=str_replace("~rel~",$row['rel'],$linkOkstr);$linkOkstr=str_replace("~id~",$row['id'],$linkOkstr);$linkOkstr=str_replace("~typelink~",$row['typelink'],$linkOkstr);$linkOkstr=str_replace("~typename~",$row['typename'],$linkOkstr);$likeType.=$linkOkstr;}}else{$row['typelink']=$row['typeurl']=GetOneTypeUrlA($row);if(is_array($dtp2->CTags)){foreach($dtp2->CTagsas$tagid=>$ctag){if(isset($row[$ctag->GetName()])){$dtp2->Assign($tagid,$row[$ctag->GetName()]);}elseif(preg_match('/^sonchannel[0-9]*$/',$ctag->GetName())){$dtp2->Assign($tagid,lib_channel_son($ctag,$row['id'],$dsql2));}}}$likeType.=$dtp2->GetResult();}}if($col>1)$likeType.="</dd>\r\n";$GLOBALS['autoindex']++;}//LoopColif($col>1){$i+=$col-1;$likeType.="</dl>\r\n";}}//Loopfor$ireset($dsql2);$dsql->FreeResult();return$likeType;}functionlib_channel_son($ctag,$typeid=0,$dsql2){$attlist="row|100,col|1,currentstyle|";FillAttsDefault($ctag->CAttribute->Items,$attlist);extract($ctag->CAttribute->Items,EXTR_SKIP);$innertext=$ctag->GetInnerText();$dsql3=clone$dsql2;$likeType='';//if($_sys_globals['typeid']>0)$typeid=$_sys_globals['typeid'];if($typeid==0){return'';}$sql="Selectid,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,descriptionFromdede_arctypewherereid='$typeid'Andishidden<>1orderbysortrankasclimit0,$row";//Andid<>'$typeid'$dtp2=newDedeTagParse();$dtp2->SetNameSpace("field","[","]");$dtp2->LoadSource($innertext);$dsql2->SetQuery($sql);$dsql2->Execute();$line=$row;for($i=0;$i<$line;$i++){if($col>1)$likeType.="<dl>\r\n";for($j=0;$j<$col;$j++){if($col>1)$likeType.="<dd>\r\n";if($row=$dsql2->GetArray()){$row['typelink']=$row['typeurl']=GetOneTypeUrlA($row);if(is_array($dtp2->CTags)){foreach($dtp2->CTagsas$tagid=>$ctag){if(isset($row[$ctag->GetName()])){$dtp2->Assign($tagid,$row[$ctag->GetName()]);}elseif(preg_match('/^sonchannel[0-9]*$/',$ctag->GetName())){$dtp2->Assign($tagid,lib_channel_son($ctag,$row['id'],$dsql3));}}}$likeType.=$dtp2->GetResult();}if($col>1)$likeType.="</dd>\r\n";}//LoopColif($col>1){$i+=$col-1;$likeType.="</dl>\r\n";}}//Loopfor$ireset($dsql3);$dsql2->FreeResult();return$likeType;}?>二、在模板调用实例:{dede:channeltype='son'typeid='7'}[field:typename/]<ul>[field:sonchannel0]<li><ahref="[field:typename/]http://www.skyey.com.cn/[field:typelink/]">---[field:typename/]</a></li>[field:sonchannel2]<li><ahref="===[field:typename/]http://www.skyey.com.cn/[field:typelink/]">===[field:typename/]</a></li>[/field:sonchannel3][/field:sonchannel2][/field:sonchannel1][/field:sonchannel0]</ul>{/dede:channel}模板调用[field:sonchannel0][/field:sonchannel0]这个是用来取子栏目用得(使用[sonchannel+数字]作为标签名是为了防止嵌套的时候无法正确解析标签)这个的作用就是当你的栏目有很多子栏目无限分级的时候方便你取子栏目的转自:http://www.cnblogs.com/seaven/archive/2012/12/02/2798000.html
很多网友在论坛发帖询问如何增加自定义属性,论坛中也有网友发帖解惑,采用的是服务器数据库后台管理的方式,这种方法对于大部分不熟悉操作的朋友来说,根本看不明白。呵呵~下面我将帮助文档中提及到的一种很简单的方法,用文字加图示的方式展现给大家,希望对这些朋友有所帮助。第一步:在织梦后台左栏点击“系统”;第二步:选择“系统”菜单下的“SQL命令行工具”;第三步:输入如下代码;insertinto`dede_arcatt`(sortid,att,attname)values(9,'d','评论');altertable`dede_archives`modify`flag`set('h','c','p','f','s','j','a','b','d')defaultNULL;第四步:点击“确定”。需要说明的是:代码第1行:values(9,'d','评论')是根据我们需要自行定义的,其中9是sortid的值,是不可重复的,也就是每添加一个自定义属性,sortid的值就应该递增到10,11,12...,以此类推!d是alt的值,是自定义属性的标记,与已存在的标记符号不能重复,“评论”是中文名称,是方便人们直观地勒戒自定义属性的含义的,可以根据需要改为“网络”、“新闻头条”等。代码第2行:set('c','h','p','f','s','j','a','b','d'),括号中的字母对应已存在的标记符号和您需要添加的标记符号,并按顺序录入,不得改变先后顺序。例如,d排序第9位,则对应第一行代码中添加的自定义属性““评论d”。