在内容页模板中加上以下代码即可<imgsrc="http://chart.apis.google.com/chart?chs=80x80&cht=qr&chld=L|0&chl=http://www.hack001.com/plus/view.php?aid={dede:php}$thisid=$refObj->Fields['id'];echo$thisid;{/dede:php}"alt="描述"widhtHeight=""widhtHeight=""/>本站首发,相关问题可以到我的博客提问,转载注明:www.hack001.com做完之后发现有人已经把他做成了标签,值得学习,原理一样一样,使用了谷歌的api接口,然后调用dede文章的文章id,进行二维码的生成dede增加二维码功能1、打开/include/extend.func.php文件,在文件结尾添加以下内容1234567891011121314if(!function_exists('qr_code')){functionqr_code($aid,$widhtHeight='150',$EC_level='L',$margin='0'){$arr=GetOneArchive($aid);if($arr['arcurl']){$str=urlencode($arr['arcurl']);}else{$str=urlencode($GLOBALS['cfg_phpurl'].'/view.php?aid='.$aid);}return'<imgsrc="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.$str.'"alt="QRcode"widhtHeight="'.$widhtHeight.'"widhtHeight="'.$widhtHeight.'"/>';}}2、在文章页模板调用,{dede:field.idfunction="qr_code(@me,200);"/}注:qr_code(@me,200)200是二维码大小,可自行调整。至此,dede增加二维码功能完成,适用dede5.6+本文出自http://www.3oom.com/blog/52.html推荐大家用第二种方法,因为生成的二维码是静态的地址,并且生成也好一些
dedecms里面有两个标签还是比较灵活的,一个是{dede:php}{/dede:php}另外一个是{dede:sql}标签,{dede:php}标签注释要用来在模板中写php代码的,{dede:sql}主要是用来调用sql用的,下面就来介绍下这两个标签到底该如何使用。该文章是转自百度空间的一篇文章。{dede:sql}标签的用法sql标签可以称得上是个万能标签了,查询数据库将其输出,这里介绍一些关于这个标签的用法:1.用来输出统计内容,这个是不错的,举个例子,我们来统计下总共发了多少的文章,思路就是输出dede_addonarticle这个文章附加表内容总数就可以了。{dede:sqlsql="SELECTCOUNT(*)ASnumsFROMdede_addonarticle"}[field:name="nums"/]{/dede:sql}2.使用~field~来进行特殊的查询,比如之前论坛上面很多会员需要做一个输出当前发布文章会员的相关内容,之前用sql或者arclist标签是没办法实现的,因为每篇内容是不同的,这里我们来用5.5的sql语句来做个示范。我们首先在文章模板中相应的位置加上下面的标签{dede:sqlsql="SELECT*FROMdede_archivesWHEREwriter=~writer~"}[field:id/],{/dede:sql}这个放到article_article.htm页面,将会检索出当前会员发布的相关文章,这里的~writer~会根据当前内容的环境变量进行替换后再执行查询。这里出现在SQL语句中条件查询的~writer~,也就是$refObj->Fields[$value]这个里面的相关内容模板中使用PHP许多人希望织梦的模板标签能够更加灵活,加入可以运行PHP的功能,这里在DedeCMSV5.5中就加入了一个可以执行php的特殊标签{dede:php}{/dede:php},这个标签可以执行PHP语句了。我这里举几个常用的例子:1.最简单的输出内容:{dede:php}$numA=1;$numB=2;echo$numA+$numB;{/dede:php}在{dede:php}里想要输出信息可以直接使用print,echo之类的打印出来赋值给@me无效这个输出的内容是计算结果:32.结合SQL查询输出单条内容{dede:php}$row=$dsql->GetOne('selectid,typenamefromdede_arctypewhereid=2');print_r($row);{/dede:php}这个输出的内容是Array([id]=>2[typename]=>问答)3.获取当前页面的变量比如我们这里进入系统后台的[模板]-[全局标记测试],我们在代码中填入下面的内容:{dede:php}print_r($refObj->Fields);{/dede:php}在PHP中想要获取dede某个字段值可以使用$refObj->Fields对象来获取列入获取title=>$refObj->Fields['title']如果环境变量保持默认,即"不使用环境ID",我们会看到以下的结果:Array([typeid]=>0[phpurl]=>/plus[indexurl]=>/[templeturl]=>/templets[memberurl]=>/member[specurl]=>/special[indexname]=>主页[templetdef]=>/templets/default)那我们再换个环境变量测试看看,这里以我本地的栏目为测试了:Array([id]=>3[reid]=>0[topid]=>0[sortrank]=>1[typename]=>产品[typedir]=>{cmspath}/product……[indexname]=>主页[templetdef]=>/templets/default[position]=>主页>产品>[title]=>产品)这样一来就检索出当前页面的局部变量了,接下来我们可以来结合前面的SQL语句来实现根据不同环境ID调用内容不同栏目内容。例如:{dede:php}$thisid=$refObj->Fields['id'];$row=$dsql->GetOne('selectid,typenamefromdede_arctypewhereid='.$thisid);print_r($row);{/dede:php}这样是来调用当前栏目的标题,这个标签功能类似于{dede:field.typename/}文章写得很不错,写在这里一是方便自己查看,而是分享给和我有同样困惑的人。希望能帮助同学们。转:http://blog.csdn.net/huminghai/article/details/7680088
<?php$data='http://www.hack001.com/';$size='100x100';$logo='http://www.0710hf.com/images/logo_2weima.jpg';//中间那logo图$png="http://chart.googleapis.com/chart?chs=$size&cht=qr&chl=$data&chld=L|1&choe=UTF-8";$QR=imagecreatefrompng($png);if($logo!==FALSE){$logo=imagecreatefromstring(file_get_contents($logo));$QR_width=imagesx($QR);$QR_height=imagesy($QR);$logo_width=imagesx($logo);$logo_height=imagesy($logo);$logo_qr_width=$QR_width/5;$scale=$logo_width/$logo_qr_width;$logo_qr_height=$logo_height/$scale;$from_width=($QR_width-$logo_qr_width)/2;imagecopyresampled($QR,$logo,$from_width,$from_width,0,0,$logo_qr_width,$logo_qr_height,$logo_width,$logo_height);}header('Content-type:image/png');imagepng($QR);imagedestroy($QR);?>
<?php/***QRCode+LogoGeneratorQR图片中间加logo,QR是根据google开放api生成的,其实啥都没有**http://labs.nticompassinc.com*///ini_set("auto_detect_line_endings",true);$data=isset($_GET['data'])?$_GET['data']:'http://weixin.qq.com/r/8bxsY6LEqpzVh7MAn_nV';$size=isset($_GET['size'])?$_GET['size']:'200x200';$logo=isset($_GET['logo'])?$_GET['logo']:'./logo.jpg';//中间那logo图//GetQRCodeimagefromGoogleChartAPI//http://code.google.com/apis/chart/infographics/docs/qr_codes.html//https://chart.googleapis.com/chart?cht=qr&chld=H|1&chs='.$size.'&chl='.urlencode($data));$png="http://chart.googleapis.com/chart?chs=150x150&cht=qr&chl=Hello+world&chld=L|1&choe=UTF-8";$QR=imagecreatefrompng($png);//Warning:imagecreatefrompng()[function.imagecreatefrompng]:Unabletofindthewrapper"https"-didyouforgettoenableitwhenyouconfiguredPHP?=//$QR=imagecreatefrompng('./chart.png');//外面那QR图if($logo!==FALSE){$logo=imagecreatefromstring(file_get_contents($logo));$QR_width=imagesx($QR);$QR_height=imagesy($QR);$logo_width=imagesx($logo);$logo_height=imagesy($logo);//ScalelogotofitintheQRCode$logo_qr_width=$QR_width/5;$scale=$logo_width/$logo_qr_width;$logo_qr_height=$logo_height/$scale;$from_width=($QR_width-$logo_qr_width)/2;//echo$from_width;exit;imagecopyresampled($QR,$logo,$from_width,$from_width,0,0,$logo_qr_width,$logo_qr_height,$logo_width,$logo_height);}header('Content-type:image/png');imagepng($QR);imagedestroy($QR);?>转:http://www.2cto.com/kf/201212/178527.html
<?phpfunctioncurPageURL(){$pageURL='http';if($_SERVER["HTTPS"]=="on"){$pageURL.="s";}$pageURL.="://";if($_SERVER["SERVER_PORT"]!="80"){$pageURL.=$_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];}else{$pageURL.=$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];}return$pageURL;}$urlToEncode=curPageURL();generateQRfromGoogle($urlToEncode);functiongenerateQRfromGoogle($chl,$widhtHeight='100',$EC_level='L',$margin='0'){$url=urlencode($url);echo'<imgsrc="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.$chl.'"alt="QRcode"widhtHeight="'.$size.'"widhtHeight="'.$size.'"/>';}?>二维码widhtHeight的最佳高度本人测试后,56像素为最佳
<?php$urlToEncode="http://www.hack001.com/";generateQRfromGoogle($urlToEncode);functiongenerateQRfromGoogle($chl,$widhtHeight='150',$EC_level='L',$margin='0'){$url=urlencode($url);echo'<imgsrc="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.$chl.'"alt="QRcode"widhtHeight="'.$size.'"widhtHeight="'.$size.'"/>';}?>
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中查看错误日志!