`

织梦 PHP 实现织梦发布功能

阅读更多

创建一个本地数据库

CREATE TABLE IF NOT EXISTS `tb_demo` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '//ID',
  `title` varchar(250) NOT NULL COMMENT '//标题',
  `content` text NOT NULL COMMENT '//内容',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

添加数据后的效果图:

 

index.php

<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<title>发布织梦管理器</title>
<link rel="stylesheet" href="css/base.css" />
<style>
.box{ width:320px; border:1px solid #eee; margin:20px auto 0 auto; }
.box h1{ width:300px; height:48px; font-size:18px; line-height:48px; border-bottom:1px solid #eee; margin:0 auto; text-align:center; font-weight:bold; color:#f60; margin-bottom: 10px;}
.box p{ width: 300px; margin:0 auto; }
.box h3{ line-height:40px; text-align:center;}
.box h3 a{ color:#06f; font-weight:normal; text-decoration:underline; font-size:15px;}
.box h3 a:hover{ font-weight:bold;}
</style>
</head>
<body>
<div class="box">
	<h1>发布织梦管理器</h1>
	<p><a href="setJSON.php" target="_blank">发布数据到织梦后台里</a></p>
	<p><a href="cleanData.php" target="_blank">清理长度过短的数据</a></p>
</div>
</body>
</html>

 效果图:

 

cleanData.php

<?php
require "connect.inc.php";
ini_set('max_execution_time',200);

/******** 配置信息 BEGIN *******/
//Mysql的IP
$dbhost = '127.0.0.1';
//Mysql的账号
$dbuser = 'root';
//Mysql的密码
$dbpwd = '123456';
//Mysql里的数据库
$dbname = 'huocheDB';
//Mysql里的数据库指定那个表
$dbtable = 'tb_demo';


//标题长度,默认12个字节,三个字节等于一个汉字,所以是四个汉字,PS:一个字节等于一个字母
//$titlen = 12;
$titlen = 12;
//标题长度,默认120个字节,三个字节等于一个汉字,所以是四十个汉字,PS:一个字节等于一个字母
//$contlen = 120;
$contlen = 120;

/******** 配置信息 END *******/
?>

<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<title>清理长度过短的数据</title>
<link rel="stylesheet" href="css/base.css" />
<style>
.box{ width:320px; border:1px solid #eee; margin:20px auto 0 auto; }
.box h1{ width:300px; height:48px; font-size:18px; line-height:48px; border-bottom:1px solid #eee; margin:0 auto; text-align:center; font-weight:bold; color:#f60; margin-bottom: 10px;}
.box p{ width: 300px; margin:0 auto; }
.box h3{ line-height:40px; text-align:center;}
.box h3 a{ color:#06f; font-weight:normal; text-decoration:underline; font-size:15px;}
.box h3 a:hover{ font-weight:bold;}
</style>
</head>
<body>
<?php
if($_GET['clean']=='yes'){
	define('DBHost',$dbhost);
	define('DBUser',$dbuser);
	define('DBPwd',$dbpwd);
	define('DBName',$dbname);
	sqlConnect();
	sqlSetDB();
	sqlSetName();
	$sql ="DELETE FROM $dbtable WHERE LENGTH(title)<$titlen OR LENGTH(content)<$contlen";
	$result = sqlQuery($sql);
	sqlClose();
	echo '<div class="box"><h1>清理长度过短的数据已成功</h1>';
	echo '<p>服务器IP:'.$dbhost.'</p><p>数据库:'.$dbname.'</p><p>对应的表:'.$dbtable.'</p><p>标题长度小于'.$titlen.'字节</p><p>内容长度小于'.$contlen.'字节</p>';
	echo '<h3><a href="index.php">返回导航</a></h3></div>';
}else{
	echo '<div class="box"><h1>是否清理长度过短的数据</h1>';
	echo '<p>服务器IP:'.$dbhost.'</p><p>数据库:'.$dbname.'</p><p>对应的表:'.$dbtable.'</p><p>标题长度小于'.$titlen.'字节</p><p>内容长度小于'.$contlen.'字节</p>';
	echo '<h3><a href="?clean=yes">开始清理</a></h3></div>';
}
?>
</body>
</html>

 这时候数据库的效果图:

 

setJSON.php

<?php
require "connect.inc.php";
ini_set('max_execution_time',200);

/******** 配置信息 BEGIN *******/
//Mysql的IP
$dbhost = '127.0.0.1';
//Mysql的账号
$dbuser = 'root';
//Mysql的密码
$dbpwd = '123456';
//Mysql里的数据库
$dbname = 'huocheDB';
//Mysql里的数据库指定那个表
$dbtable = 'tb_demo';

//从哪个id开始,最小的值为 1
$beginID = 1;
//获取多少条数据
$number = 4;
//设置保存的名称,若不重新命名,会覆盖原来的JSOP数据
$jsonName = 'data5';

/******** 配置信息 END *******/
?>
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<title>第一步:保存选中的数据到JSON文件里</title>
<link rel="stylesheet" href="css/base.css" />
</head>
<body>
<?php
define('DBHost',$dbhost);
define('DBUser',$dbuser);
define('DBPwd',$dbpwd);
define('DBName',$dbname);
sqlConnect();
sqlSetDB();
sqlSetName();

$sql = "SELECT 	id, title, content FROM $dbtable WHERE id>=$beginID LIMIT 0, $number";
$result = sqlQuery($sql);

$data = array();
$i=0;
$jsonName = "json/$jsonName.json";

echo '<table cellpadding="0" cellspacing="0" class="g-w">';
echo '<tr class="header"><td colspan="3" align="center">第一步:保存选中的数据到JSON文件里</td></tr>';
echo '<tr class="info"><td colspan="3" align="center">服务器IP:'.$dbhost.' 数据库:'.$dbname.' 对应的表:'.$dbtable.' 保存JSON路径:'.$jsonName.'  从ID '.$beginID.' 开始获取'.$number.'条数据</td></tr>';
echo '<tr class="title"><td>ID</td><td align="center">标题</td><td align="center">内容</td></tr>';

while (!!$row = mysql_fetch_array($result)){
	$data[$i] = array($row[id],$row[title],$row[content]);
	$title = mb_strlen($row[title],'utf-8')>30?mb_substr($row[title],0,27, 'utf-8').'...':$row[title];
	$content = mb_substr(str_replace(array(" "," ","\t","\n","\r"),array("","","","",""),strip_tags($row[content])),0,60, 'utf-8');
	echo '<tr><td>'.$row[id].'</td><td>'.$title.'</td><td>'.$content.'</td></tr>';
	$i++;
}
$json_string = json_encode($data);

file_put_contents($jsonName, $json_string);
sqlClose();
echo '<tr class="footer"><td colspan="3" align="center">已成功添加到JSON文件 <a href="putDEDE.php">点击这里,开始发布数据到织梦后台</a></td></tr></table>';
?>
</body>
</html>

效果图:

 

putDEDE.php

<?php
require "connect.inc.php";
ini_set('max_execution_time',200);

/******** 配置信息 BEGIN *******/
//Mysql的IP
$dbhost = '120.120.120.120';
//Mysql的账号
$dbuser = 'testDB';
//Mysql的密码
$dbpwd = '123456';
//Mysql里的数据库,默认和账号是一样的
//$dbname = 'demo2';
$dbname = $dbuser;


//输入你要发布的JSON数据的名称
$jsonName = 'data5';
//设置栏目ID
//$typeid ='4';
$typeid ='5';
//设置作者
//$writer = 'Muller';
$writer = 'Muller';

/******** 配置信息 END *******/
?>
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<title>发布数据到织梦后台</title>
<link rel="stylesheet" href="css/base.css" />
</head>
<body>
<?php
$jsonName = "json/$jsonName.json";
$json_string = file_get_contents($jsonName);
$data = json_decode($json_string, true);

define('DBHost',$dbhost);
define('DBUser',$dbuser);
define('DBPwd',$dbpwd);
define('DBName',$dbname);
sqlConnect();
sqlSetDB();
sqlSetName();

//获取栏目
$sqlGetType ="SELECT typename FROM dede_arctype WHERE id=$typeid LIMIT 0, 1";
$result = sqlGetOne($sqlGetType);
$typename = mb_strlen($result[typename])<=0?'栏目不存在':$result[typename];

if($_GET['db']=='go'){
	
	//获取插入数据的ID
	$sqlGetID ='SELECT id FROM dede_archives ORDER BY id DESC LIMIT 0, 1';
	$result2 = sqlGetOne($sqlGetID);
	$dataid = $result2[id];
	$dataid+=1;
	
	//创建日志
	date_default_timezone_set("Asia/Shanghai");
	$log = 'log/log '.@date("Y-m-d h.i.s").'.txt';
	$logTxt = '服务器IP:'.$dbhost.' 账号:'.$dbuser.' JSON路径:'.$jsonName.' 栏目ID:'.$typeid.' 栏目内容:'.$typename.' 作者:'.$writer;
	$logTxt .= "\n插入信息如下:\n";
	$logTxt .= "=============== begin ============= \n";
	
	echo '<table cellpadding="0" cellspacing="0" class="g-w">';
	echo '<tr class="header"><td align="center">最后一步:发布完成,不要刷新页面,因为刷新页面会重新发布一次</td></tr>';
	echo '<tr class="info"><td align="center">服务器IP:'.$dbhost.' 账号:'.$dbuser.' JSON路径:'.$jsonName.' 栏目ID:'.$typeid.' 栏目内容:'.$typename.' 作者:'.$writer.'</td></tr>';
	echo '<tr class="title"><td>正在写入日志。。。</td></tr>';

	//循环插入数据
	for($i=0;$i<count($data);$i++){
		//初始化
		//默认插入当前的时间
		$date = time();
		//随机数
		$click = mt_rand(100, 500);
		
		//JSON 数据
		$id = $data[$i][0];
		$title = $data[$i][1];
		$content = $data[$i][2];
		
		//获取描述
		$description = mb_substr(str_replace(array(" "," ","\t","\n","\r"),array("","","","",""),strip_tags($content)),0,250, 'utf-8');
		
		$sqlAdd = "INSERT INTO dede_archives (id, typeid, typeid2, sortrank, flag, ismake, channel, arcrank, click, money, title, shorttitle, color, writer, source, litpic, pubdate, senddate, mid, keywords, lastpost, scores, goodpost, badpost, voteid, notpost, description, filename, dutyadmin, tackid, mtype, weight) VALUES ('$dataid', '$typeid', '0', '$date', NULL, '1', '1', '0', '$click', '0', '$title', '', '', '$writer', '未知', '', '$date', '$date', '1', '$title', '0', '0', '0', '0', '', '0', '$description', '', '1', '0', '0', '0')";
		$sqlAdd2 = "INSERT INTO dede_addonarticle(aid, typeid, body, redirecturl, templet, userip) VALUES ('$dataid','$typeid','$content','','','127.0.0.1')";
		$sqlAdd3 = "INSERT INTO dede_arctiny (id, typeid, typeid2, arcrank, channel, senddate, sortrank, mid) VALUES ('$dataid', '$typeid', '0', '0', '1', '$date', '$date', '1')";
		$sqlUpdata = "Update dede_archives set arcrank =0,ismake=1,dutyadmin =1,tackid=0 WHERE id=$dataid";
		sqlQuery($sqlAdd); 
		sqlQuery($sqlAdd2);
		sqlQuery($sqlAdd3);
		sqlQuery($sqlUpdata);
		echo '<tr><td>JSON ID:'.$id.' 对应的织梦ID是: '.$dataid.' 标题:'.$title .' </td></tr>';
		$logTxt .= 'JSON ID:'.$id.' 对应的织梦ID是: '.$dataid.' 标题:'.$title ."\n";
		$dataid++;
	}
	$logTxt .= "=============== end ============= \n";
	file_put_contents($log, $logTxt);
	echo '<tr class="footer"><td align="center">已发布成功,保存日志文件:'.$log.',请关闭该页面或<a href="index.php">点击返回首页</a></td></tr></table>';
}else{
	echo '<table cellpadding="0" cellspacing="0" class="g-w">';
	echo '<tr class="header"><td colspan="3" align="center">第二步:发布前检查</td></tr>';
	echo '<tr class="info"><td colspan="3" align="center">服务器IP:'.$dbhost.' 账号:'.$dbuser.' JSON路径:'.$jsonName.' 栏目ID:'.$typeid.' 栏目内容:'.$typename.' 作者:'.$writer.'</td></tr>';
	echo '<tr class="title"><td>ID</td><td align="center">标题</td><td align="center">内容</td></tr>';
	for($i=0;$i<count($data);$i++){
		$title = mb_strlen($data[$i][1],'utf-8')>30?mb_substr($data[$i][1],0,27, 'utf-8').'...':$data[$i][1];
		$content = mb_substr(str_replace(array(" "," ","\t","\n","\r"),array("","","","",""),strip_tags($data[$i][2])),0,60, 'utf-8');
		echo '<tr><td>'.$data[$i][0].'</td><td>'.$title.'</td><td>'.$content.'</td></tr>';
	}
	echo '<tr class="footer"><td colspan="3" align="center">确定没问题后 <a href="?db=go">点击开始发布</a></td></tr></table>';
}
sqlClose();
?>
</body>
</html>

 效果图:

 

进入织梦后台查看,如图:

 

 

  • 大小: 55 KB
  • 大小: 21.3 KB
  • 大小: 50.6 KB
  • 大小: 84.2 KB
  • 大小: 80.5 KB
  • 大小: 62.8 KB
  • 大小: 38.6 KB
1
0
分享到:
评论

相关推荐

    织梦CMS实现全站动态浏览

    织梦CMS实现全站动态浏览 织梦CMS是一款流行的内容管理系统,提供了强大的网站建设和管理功能。为了实现全站动态浏览,需要对织梦CMS进行相应的设置和修改。下面将对织梦CMS实现全站动态浏览的方法进行详细介绍。 ...

    织梦post登录发布.zip

    3. "spec.fne" 这可能是规格说明书或配置文件,详细说明了登录和发布功能的实现细节,如接口定义、参数说明等。 4. "krnln.fnr" 和 "mp3.run" 这两个文件名不太常见,可能是特定于这个压缩包的临时文件、库文件或是...

    织梦定时审核定时发布插件.zip

    【织梦定时审核定时发布插件】是一款专为织梦内容管理系统(DedeCMS)设计的实用工具,它能够帮助网站管理员实现文章的自动审核和定时发布功能,从而提高工作效率,减少人工操作的繁琐环节。在网站运营中,尤其是...

    织梦定时发布文章代码

    织梦内容管理系统(DedeCMS)是一款广泛应用的开源PHP网站管理平台,以其强大的内容管理和自定义功能...通过理解和掌握这些知识,你可以有效地实现织梦内容管理系统中的文章定时发布功能,提升网站的自动化管理水平。

    织梦DedeCMS实现百度Ping推送功能

    织梦DedeCMS的百度Ping推送功能要有Rss订阅才能实现,所以再实现百度推送功能之前要简单的增加个织梦的RSS订阅功能 一、增加织梦RSS订阅功能 打开下载的“sitemap+百度ping(gb2312).rar等”里面的“全站rss”,把php...

    织梦多选功能修改

    "织梦多选功能修改" 这个文件名很可能包含了实现这一功能的源代码,可能包括HTML模板文件、JavaScript脚本和PHP处理文件。通过查看和分析这些文件,我们可以进一步理解其工作原理和优化空间。 6. **学习与实践**:...

    织梦栏目新增缩略图功能

    在织梦系统中,上传功能一般由JavaScript和PHP配合完成。JavaScript处理用户选择的文件,预览并提交到服务器;PHP则负责接收文件,保存到服务器,并返回保存成功的信息。因此,我们需要找到与图片上传相关的...

    织梦条件联合查询

    联合查询功能的实现,主要依赖于织梦的后台数据库查询逻辑和前端界面交互设计。 在织梦中实现多条件联合查询,通常涉及以下几个关键步骤: 1. **定义查询条件**:首先,你需要在织梦的后台设置或扩展各种查询条件...

    织梦文章图片自动添加alt功能

    在网页设计和优化中,`alt`属性是一个非常重要的元素,尤其对于搜索引擎优化(SEO)和无障碍访问(Web Accessibility)有着关键作用。...通过修改织梦系统的源代码,我们可以轻松实现这一功能,让网站更加专业和友好。

    织梦全国多城市分站地区插件(带教程)别轻易尝试_经济_织梦分站_织梦全国分站_全国分站_

    【描述】中的“已验证可实现”表明这个插件经过了实际测试,可以成功地在织梦系统中部署并运行,为用户创建和管理全国范围内的多个地区子站点提供了一套完整的解决方案。这通常涉及到复杂的URL重写、地区分类、数据...

    织梦实现后台excel表格导入数据-十里.rar

    本资源“织梦实现后台excel表格导入数据-十里.rar”提供了在织梦系统中实现Excel表格批量导入数据的功能,这对于需要大量数据快速录入到数据库的场景非常实用。 首先,我们需要了解织梦(DedeCMS)的基础知识。织梦...

    免费织梦发布插件-免费采集伪原创发布推送插件

    织梦内容管理系统(DedeCMS)是一款广泛使用的开源PHP网站构建平台,它以其丰富的功能和易用性深受用户喜爱。针对织梦系统,开发了一系列的扩展插件以增强其功能,其中“免费织梦发布插件”就是其中之一,专门用于...

    织梦文章内容页自动加上ASCII码插件支持发布过文章-cj2854.rar

    标题中的“织梦文章内容页自动加上ASCII码插件支持发布过文章-cj2854.rar”表明这是一个针对织梦(DedeCMS)内容管理系统开发的插件,该插件的主要功能是在文章内容页自动添加ASCII码。织梦CMS是一款广泛使用的开源...

    织梦PHP分类信息源码

    织梦地方php分类信息源码免费下载, 1.上传程序到网站根目录,访问http://域名/install/index.php 进行安装,不要直接打开网址,先直接安装; 2.安装完成后 后台恢复数据即可 默认帐号密码都是admin http://域名/...

    织梦excel导入数据库

    织梦系统是一个基于PHP和MySQL的开源CMS,它提供了丰富的功能,包括文章发布、栏目管理以及模板设计等。在处理大量数据时,如会员信息、商品信息或文章数据,手动输入会非常耗时且容易出错,因此利用Excel进行数据...

    织梦 php 标签和 sql 标签的使用方法

    PHP标签是织梦系统提供的一种自定义功能,允许开发者在模板中插入动态代码,以实现特定的功能。这些标签通常以`{dede}`或`{field}`开头,如`{dede:arcrow}`用于获取文章列表,`{field:title}`则用于显示文章的标题。...

    自适应织梦网站程序

    3. **PHP文件**:织梦程序的核心部分,负责处理用户请求、数据库交互以及实现动态功能。 4. **数据库脚本**:用于创建和初始化网站所需的数据库结构。 5. **插件和模块**:如文章发布系统、评论功能、SEO优化工具等...

    织梦cms站长导航网站源码.zip

    此外,织梦CMS还有众多插件和模块可供扩展,例如文章发布、会员管理、评论系统等,可以满足不同类型的导航网站需求。 "截图"文件可能是展示网站预览效果或安装步骤的图像,帮助用户更好地理解和操作。而"文本.txt...

    织梦 企业网站 php cms

    织梦CMS就是基于PHP,通过编写PHP代码来实现网站的功能和交互。 2. **MySQL数据库**:MySQL是流行的开源关系型数据库管理系统,与PHP配合默契,可以高效存储和管理网站数据,如文章、用户信息等。织梦CMS利用MySQL...

    织梦 联动筛选样式

    标题中的“织梦联动筛选样式”指的是在网页设计中,使用织梦(DedeCMS)这一内容管理系统时,实现的筛选功能的一种特定样式或方法。织梦是一个基于PHP和MySQL的开源CMS,常用于构建企业网站、新闻门户等。联动筛选...

Global site tag (gtag.js) - Google Analytics