微信开发模式(php)
推荐阅读:
欲提高销售也应改变营销方法,而
在这篇文章中,你会学到: ●竞争环境如何改变您的销售团队,你可以为此做些什么。 ●内容营销会如何影响销售决策。 ●你可以做什么去了解更多你的潜在客户。 销售和营销部门之间新的责任期望和潜在客户对在线内容需求的增加,正在改变销售队伍的竞争环境。
python 3快速入门之模块化和类
首先引用官方的一段话 Python 展现了瑞士军刀的哲学。 这可以通过它更大的包的高级和健壮的功能来得到最好的展现。 例如: xmlrpc.client 和 xmlrpc.server 模块让远程过程调用变得轻而易举。 尽管模块有这样的名字, 用 户无需拥有 XML 的知识或处理 XML。 ?
才开始学习和PHP,在此记录以供后阅。
MsgType );
switch ( $RX_TYPE ) {
case "text":
$resultStr = $this->receiveText( $postObj );
break;
case "event":
$resultStr = $this->receiveEvent( $postObj );
break;
default:
$resultStr = "";
break;
}
echo $resultStr;
} else {
echo "";
exit;
}
}
private function receiveText( $object ) {
$getkeyword = $object->Content;
switch ( $getkeyword ) {
case '产品':
$funcFlag = 0;
$contentStr = "产品链接:http://http://www.zjjv.com///products/";
$resultStr = $this->transmitText( $object, $contentStr, $funcFlag );
break;
case '新闻':
$funcFlag = 0;
$contentStr ="新闻链接:http://http://www.zjjv.com///news/";
$resultStr = $this->transmitText( $object, $contentStr, $funcFlag );
break;
case '方案':
$funcFlag = 0;
$contentStr ="方案链接:http://http://www.zjjv.com///articles/";
$resultStr = $this->transmitText( $object, $contentStr, $funcFlag );
break;
case '我们':
$funcFlag = 0;
$contentStr ="我们链接:http://http://www.zjjv.com///culture/?type=detail&id=1";
$resultStr = $this->transmitText( $object, $contentStr, $funcFlag );
break;
default:
break;
}
return $resultStr;
}
private function receiveEvent( $object ) {
$contentStr = "";
switch ( $object->Event ) {
case "subscribe":
$contentStr = "欢迎您关注xxx";
case "unsubscribe":
break;
case "CLICK":
switch ( $object->EventKey ) {
case "V1001_GETCODE":
$contentStr = "xxx";
break;
case "V1002_HISTORY":
$contentStr[] = array( "Title" =>"最后一条历史记录",
"Description" =>"xxx",
"PicUrl" =>"xxx",
"Url" =>"xxx" );
break;
case "V2001_INTERDUCE":
$contentStr[] = array( "Title" =>"xxx",
"Description" =>"xxx",
"Url" =>"http://http://www.zjjv.com///xxx" );
break;
case "V3001_JOIN":
$getuid = $this->getUid( $object );
if ( $getuid==1 ) {
$contentStr = 'Could not connect: '.mysql_error();
}else {
$contentStr = "唯一码:".$getuid;
}
break;
default:
$contentStr[] = array( "Title" =>"默认菜单回复",
"Description" =>"xxx",
"PicUrl" =>"xxx",
"Url" =>"xxx" );
break;
}
break;
default:
break;
}
if ( is_array( $contentStr ) ) {
$resultStr = $this->transmitNews( $object, $contentStr );
}else {
$resultStr = $this->transmitText( $object, $contentStr );
}
return $resultStr;
}
private function transmitText( $object, $content, $funcFlag = 0 ) {
$textTpl = "
%s
%d
";
$resultStr = sprintf( $textTpl, $object->FromUserName, $object->ToUserName, time(), $content, $funcFlag );
return $resultStr;
}
private function transmitNews( $object, $arr_item, $funcFlag = 0 ) {
if ( !is_array( $arr_item ) )
return;
$itemTpl = "
";
$item_str = "";
foreach ( $arr_item as $item )
$item_str .= sprintf( $itemTpl, $item['Title'], $item['Description'], $item['PicUrl'], $item['Url'] );
$newsTpl = "
%s
%s
$item_str
%s
";
$resultStr = sprintf( $newsTpl, $object->FromUserName, $object->ToUserName, time(), count( $arr_item ), $funcFlag );
return $resultStr;
}
/* 生成唯一码*/
public function getUid( $object ) {
$getOpenid = $object->FromUserName;
$con = mysql_connect( "localhost", "root", "xxx" );
mysql_select_db( "xxx", $con );
if ( !$con ) {
return 1;
}
$flag = true;
$getUserresult = mysql_query( "SELECT * FROM loginuser WHERE openid = '".$getOpenid."'" );
$getuserrow = mysql_num_rows( $getUserresult );
if ( $getuserrow>0 ) {
$userrow = mysql_fetch_array( $getUserresult );
if ( $userrow['state']==0 ) {
return $userrow['userPassword']."[未完成考试]";
$flag = false;
}else {
return $userrow['userPassword']."[已完成考试]";
$flag = false;
}
}
/* 循环确定唯一性 */
while ( $flag ) {
$uid = uniqid( true );
$uid = substr( $uid, -8 );
$result = mysql_query( "SELECT * FROM loginuser where userPassword = '".$uid."'" );
$row = mysql_num_rows( $result );
if ( $row == 0 ) {
mysql_query( "INSERT INTO loginuser (userPassword,state,openid) VALUES ('".$uid."','0','".$getOpenid."')" );
mysql_close( $con );
return $uid;
$flag =false;
}
}
}
private function getUidtest( $object ) {
return $object->FromUserName;
}
private function checkSignature() {
// you must define TOKEN by yourself
if ( !defined( "TOKEN" ) ) {
throw new Exception( 'TOKEN is not defined!' );
}
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$token = TOKEN;
$tmpArr = array( $token, $timestamp, $nonce );
// use SORT_STRING rule
sort( $tmpArr, SORT_STRING );
$tmpStr = implode( $tmpArr );
$tmpStr = sha1( $tmpStr );
if ( $tmpStr == $signature ) {
return true;
}else {
return false;
}
}
}
?>
,站群系统
分享:
在.NET中不安装Office使用EPPlus
在开发.NET应用中可能会遇到需要生成带图表(Chart)的Excel报表的需求,特别是在一些ASP.NET网站中,有时候我们并不能保证Web服务器上一定安装了Office组件,所以使用微软的Office来生成Excel并不保证在所有情况下都使用,有时候即使Web服务器上安装了Office也
更新 drupal6的 imagecache pres
因为drupal6中的imagecache preset 已经整合到drupal7的核心中,接下来的这个解决方案是Vladimir提出的,你需要在你的drupal根目录下面创建一个php文件并将以下代码复制进去,执行这个文件. [php] ?php define(DRUPAL_ROOT, getcwd()); require_once DRUPAL_