⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mychannel_edit.php

📁 这是matlab的一个小程序
💻 PHP
📖 第 1 页 / 共 2 页
字号:
	$query = "Update `#@__channeltype` set
	typename = '$typename',
	addtable = '$addtable',
	addcon = '$addcon',
	mancon = '$mancon',
	editcon = '$editcon',
	useraddcon = '$useraddcon',
	usermancon = '$usermancon',
	usereditcon = '$usereditcon',
	fieldset = '$fieldset',
	listfields = '$listfields',
	issend = '$issend',
	arcsta = '$arcsta',
	usertype = '$usertype',
	sendrank = '$sendrank',
	needdes = '$needdes',
	needpic = '$needpic',
	titlename = '$titlename',
	onlyone = '$onlyone',
	dfcid = '$dfcid'
	where id='$id' ";
	if(trim($fieldset)!='')
	{
		$dtp = new DedeTagParse();
		$dtp->SetNameSpace("field","<",">");
		$dtp->LoadSource(stripslashes($fieldset));
		if(!is_array($dtp->CTags))
		{
			ShowMsg("文本配置参数无效,无法进行解析!","-1");
			exit();
		}
	}
	$trueTable = str_replace("#@__",$cfg_dbprefix,$addtable);
	if(!$dsql->IsTable($trueTable))
	{
		ShowMsg("系统找不到你所指定的表 $trueTable ,请手工创建这个表!","-1");
		exit();
	}
	$dsql->ExecuteNoneQuery($query);
	ShowMsg("成功更改一个模型!","mychannel_main.php");
	exit();
}
/*--------------------
function __GetTemplate()
--------------------*/
else if($dopost=="gettemplets")
{
	require_once(DEDEINC."/oxwindow.class.php");
	$row = $dsql->GetOne("Select * From `#@__channeltype` where id='$id'");
	$wintitle = "频道管理-查看模板";
	$wecome_info = "<a href='mychannel_main.php'>频道管理</a>::查看模板";
	$win = new OxWindow();
	$win->Init("","js/blank.js","");
	$win->AddTitle("频道:(".$row['typename'].")默认模板文件说明:");
	$defaulttemplate = $cfg_templets_dir.'/'.$cfg_df_style;
	$msg = "
		文档模板:{$defaulttemplate}/article_{$row['nid']}.htm
		<a href='tpl.php?acdir={$cfg_df_style}&action=edit&filename=article_{$row['nid']}.htm'>[修改]</a><br/>
		列表模板:{$defaulttemplate}/list_{$row['nid']}.htm
		<a href='tpl.php?acdir={$cfg_df_style}&action=edit&filename=list_{$row['nid']}.htm'>[修改]</a>
		<br/>
		频道封面模板:{$defaulttemplate}/index_{$row['nid']}.htm
		<a href='tpl.php?acdir={$cfg_df_style}&action=edit&filename=index_{$row['nid']}.htm'>[修改]</a>
	";
	$win->AddMsgItem("<div style='padding:20px;line-height:300%'>$msg</div>");
	$winform = $win->GetWindow("hand","");
	$win->Display();
	exit();
}
/*--------------------
function __Delete()
--------------------*/
else if($dopost=="delete")
{
	CheckPurview('c_Del');
	$row = $dsql->GetOne("Select * From `#@__channeltype` where id='$id'");
	if($row['issystem'] == 1)
	{
		ShowMsg("系统模型不允许删除!","mychannel_main.php");
		exit();
	}
	if(empty($job))
	{
		$job="";
	}
	if($job=="") //确认提示
	{
		require_once(DEDEINC."/oxwindow.class.php");
		$wintitle = "频道管理-删除模型";
		$wecome_info = "<a href='mychannel_main.php'>频道管理</a>::删除模型";
		$win = new OxWindow();
		$win->Init("mychannel_edit.php","js/blank.js","POST");
		$win->AddHidden("job","yes");
		$win->AddHidden("dopost",$dopost);
		$win->AddHidden("id",$id);
		$win->AddTitle("你确实要删除 (".$row['typename'].") 这个频道?");
		$winform = $win->GetWindow("ok");
		$win->Display();
		exit();
	}
	else if($job=="yes") //操作
	{
		require_once(DEDEINC."/typeunit.class.admin.php");
		$myrow = $dsql->GetOne("Select addtable From `#@__channeltype` where id='$id'",MYSQL_ASSOC);
		if(!is_array($myrow))
		{
			ShowMsg('你所指定的频道信息不存在!','-1');
			exit();
		}

		//检查频道的表是否独占数据表
		$addtable = str_replace($cfg_dbprefix,'',str_replace('#@__',$cfg_dbprefix,$myrow['addtable']));
		$row = $dsql->GetOne("Select count(id) as dd From `#@__channeltype` where  addtable like '{$cfg_dbprefix}{$addtable}' Or addtable like CONCAT('#','@','__','$addtable') ; ");
		$isExclusive2 = ($row['dd']>1 ? 0 : 1 );

		//获取与频道关连的所有栏目id
		$tids = '';
		$dsql->Execute('qm',"Select id From `#@__arctype` where channeltype='$id'");
		while($row = $dsql->GetArray('qm'))
		{
			$tids .= ($tids=='' ? $row['id'] : ','.$row['id']);
		}

		//删除相关信息
		if($tids!='')
		{
			$dsql->ExecuteNoneQuery("Delete From `#@__arctiny` where typeid in($tids); ");
			$dsql->ExecuteNoneQuery("Delete From `{$myrow['maintable']}` where typeid in($tids); ");
			$dsql->ExecuteNoneQuery("Delete From `#@__spec` where typeid in ($tids); ");
			$dsql->ExecuteNoneQuery("Delete From `#@__feedback` where typeid in ($tids); ");
			$dsql->ExecuteNoneQuery("Delete From `#@__arctype` where id in ($tids); ");
		}

		//删除附加表或附加表内的信息
		if($isExclusive2==1)
		{
			$dsql->ExecuteNoneQuery("DROP TABLE IF EXISTS `{$cfg_dbprefix}{$addtable}`;");
		}
		else
		{
			if($tids!='' && $myrow['addtable']!='')
			{
				$dsql->ExecuteNoneQuery("Delete From `{$myrow['addtable']}` where typeid in ($tids); ");
			}
		}

		//删除频道配置信息
		$dsql->ExecuteNoneQuery("Delete From `#@__channeltype` where id='$id' ");

		//更新栏目缓存
		UpDateCatCache($dsql);
		ShowMsg("成功删除一个模型!","mychannel_main.php");
		exit();
	}
}//del

/*----------------
function __modifysearch()
-----------------*/
else if($dopost == 'modifysearch'){
	if(!isset($step)) $step=0;
	if(empty($step)){
		$step = 1;
		$mid = intval($mid);
		$query = "select mainfields, addonfields, template from #@__advancedsearch where mid='$mid'";
		$searchinfo = $dsql->GetOne($query);
		if(!is_array($searchinfo)){
			$searchinfo['mainfields'] = $searchinfo['addonfields'] = $searchinfo['template'] = '';
		}
		$searchinfo['mainfields'] = explode(',', $searchinfo['mainfields']);
		$searchinfo['addonfields'] = explode(',', $searchinfo['addonfields']);
		$addonfieldsarr = array();
		foreach($searchinfo['addonfields'] as $k){
			$karr = explode(':', $k);
			$addonfieldsarr[] = $karr[0];
		}
		$template = $searchinfo['template'] == '' ? 'advancedsearch.htm' : $searchinfo['template'];
		$c1 = in_array('iscommend', $searchinfo['mainfields']) ? 'checked' : '';
		$c2 = in_array('typeid', $searchinfo['mainfields']) ? 'checked' : '';
		$c3 = in_array('writer', $searchinfo['mainfields']) ? 'checked' : '';
		$c4 = in_array('source', $searchinfo['mainfields']) ? 'checked' : '';
		$c5 = in_array('senddate', $searchinfo['mainfields']) ? 'checked' : '';


		$mainfields = '<label><input type="checkbox" name="mainfields[]" '.$c1.' value="iscommend" class="np" />是否推荐</label>';
		$mainfields .= '<label><input type="checkbox" name="mainfields[]" '.$c2.' value="typeid" class="np" />栏目</label>';

		$mainfields .= '<label><input type="checkbox" name="mainfields[]" '.$c3.' value="writer" class="np" />作者</label>';
		$mainfields .= '<label><input type="checkbox" name="mainfields[]" '.$c4.' value="source" class="np" />来源</label>';
		$mainfields .= '<label><input type="checkbox" name="mainfields[]" '.$c5.' value="senddate" class="np" />发布时间</label>';
		/*
		$mainfields .= '<label><input type="checkbox" name="mainfields[]" value="description" />摘要</label>';
		$mainfields .= '<label><input type="checkbox" name="mainfields[]" value="keywords" />关键词</label>';
		$mainfields .= '<label><input type="checkbox" name="mainfields[]" value="smalltypeid" />小分类</label>';
		$mainfields .= '<label><input type="checkbox" name="mainfields[]" value="area" />地区</label>';
		$mainfields .= '<label><input type="checkbox" name="mainfields[]" value="sector" />行业</label>';
		*/
		$query = "select * from `#@__channeltype` where ID='$mid'";
		$channel = $dsql->GetOne($query);

		$searchtype = array('int', 'datetime', 'float', 'textdata', 'textchar', 'text', 'htmltext', 'multitext', 'select', 'radio', 'checkbox');
		$addonfields = '';
		$dtp = new DedeTagParse();
		$dtp->SetNameSpace("field","<",">");
		$dtp->LoadSource($channel['fieldset']);
		if(is_array($dtp->CTags) && !empty($dtp->CTags)){
			foreach($dtp->CTags as $ctag){
				$datatype = $ctag->GetAtt('type');
				$value = $ctag->GetName();
				$label = $ctag->GetAtt('itemname');
				if(in_array($datatype, $searchtype)){
					$checked = in_array($value, $addonfieldsarr) ? 'checked' : '';
					$addonfields .= "<label><input type=\"checkbox\" name=\"addonfields[]\" $checked value=\"$value\" class='np' />$label</label>";
				}
			}
		}
		require_once(dirname(__FILE__)."/templets/mychannel_modifysearch.htm");
	}elseif($step == 1){
		if(empty($addonfields))
		{
			$addonfields = '';
		}
		$template = trim($template);
		$forms = '<form action="'.$cfg_cmspath.'/plus/advancedsearch.php" method="post">';
		$forms .= "<input type=\"hidden\" name=\"mid\" value=\"$mid\" />";
		$forms .= "<input type=\"hidden\" name=\"dopost\" value=\"search\" />";
		$forms .= "关键词:<input type=\"text\" name=\"q\" /><br />";

		$mainstring = '';
		if(!empty($mainfields) && is_array($mainfields)){
			$mainstring = implode(',', $mainfields);
			foreach($mainfields as $mainfield){
				if($mainfield == 'typeid'){
					require_once(dirname(__FILE__)."/../include/typelink.class.php");
					$tl = new TypeLink(0);
					$typeOptions = $tl->GetOptionArray(0,0,$mid);
					$forms .= "<br />栏目:<select name='typeid' style='width:200'>\r\n";
					$forms .= "<option value='0' selected>--不限栏目--</option>\r\n";
					$forms .= $typeOptions;
					$forms .= "</select>";
					//$tl->Close();

					$forms .= "<label><input type=\"checkbox\" name=\"includesons\" value=\"1\" />包含子栏目</label><br />";
				}elseif($mainfield == 'iscommend'){
					$forms .= "<label><input type=\"checkbox\" name=\"iscommend\" value=\"1\" />推荐</label><br />";
				}elseif($mainfield == 'writer'){
					$forms .= "作者: <input type=\"text\" name=\"writer\" value=\"\" /><br />";
				}elseif($mainfield == 'source'){
					$forms .= "来源: <input type=\"text\" name=\"source\" value=\"\" /><br />";
				}elseif($mainfield == 'senddate'){
					$forms .= "开始时间:<input type=\"text\" name=\"startdate\" value=\"\" /><br />";
					$forms .= "结束时间:<input type=\"text\" name=\"enddate\" value=\"\" /><br />";
				}

			}
		}

		$addonstring = '';

		$intarr = array('int','float');
		$textarr = array('textdata','textchar','text','htmltext','multitext');

		if(is_array($addonfields) && !empty($addonfields)){

			//$addonstring = implode(',', $addonfields);

			$query = "select * from #@__channeltype where ID='$mid'";
			$channel = $dsql->GetOne($query);

			$dtp = new DedeTagParse();
			$dtp->SetNameSpace("field","<",">");
			$dtp->LoadSource($channel['fieldset']);
			$fieldarr = $itemarr = $typearr = array();
			foreach($dtp->CTags as $ctag){
				foreach($addonfields as $addonfield){
					if($ctag->GetName() == $addonfield){
						$fieldarr[] = $addonfield;
						$itemarr[] = $ctag->GetAtt('itemname');
						$typearr[] = $ctag->GetAtt('type');
						$valuearr[] = $ctag->GetInnerText();
						$defaultarr[] = $ctag->GetAtt('default');
					}
				}
			}

			foreach($fieldarr as $k=>$field){
				$itemname = $itemarr[$k];
				$name = $field;
				$type = $typearr[$k];
				$default = $defaultarr[$k];
				$tmp = $name.':'.$type;
				if(in_array($type, $intarr)){
					$forms .= "<br />$itemname : <input type=\"text\" name=\"start".$name."\" value=\"\" /> 到 <input type=\"text\" name=\"end".$name."\" value=\"\" /><br />";
				}elseif(in_array($type, $textarr)){
					$forms .= "$itemname : <input type=\"text\" name=\"$name\" value=\"\" /><br />";

				}elseif($type == 'select'){
					$values = explode(',', $valuearr[$k]);
					if(is_array($values) && !empty($values)){
						$forms .= "<br />$itemname : <select name=\"$name\" ><option value=\"\">不限</option>";
						foreach($values as $value){
							$forms .= "<option value=\"$value\">$value</option>";
						}
						$forms .= "</select>";
					}
				}elseif($type == 'radio'){
					$values = explode(',', $valuearr[$k]);
					if(is_array($values) && !empty($values)){
						$forms .= "<br />$itemname : <label><input type=\"radio\" name=\"".$name."\" value=\"\" checked />不限</label>";
						foreach($values as $value){
							$forms .= "<label><input type=\"radio\" name=\"".$name."\" value=\"$value\" />$value</label>";
						}
					}
				}elseif($type == 'checkbox'){
					$values = explode(',', $valuearr[$k]);
					if(is_array($values) && !empty($values)){
						$forms .= "<br />$itemname : ";
						foreach($values as $value){
							$forms .= "<label><input type=\"checkbox\" name=\"".$name."[]\" value=\"$value\" />$value</label>";
						}
					}

				}elseif($type == 'datetime'){
					$forms .= "<br />开始时间:<input type=\"text\" name=\"startdate\" value=\"\" /><br />";
					$forms .= "结束时间:<input type=\"text\" name=\"enddate\" value=\"\" /><br />";
				}else{
					$tmp = '';
				}
				$addonstring .= $tmp.',';

			}

		}
		$forms .= '<input type="submit" name="submit" value="开始搜索" /></form>';
		$formssql = addslashes($forms);
		$query = "replace into #@__advancedsearch(mid, maintable, mainfields, addontable, addonfields, forms, template) values('$mid','$maintable','$mainstring','$addontable','$addonstring','$formssql', '$template')";
		$dsql->SetQuery($query);
		$dsql->executenonequery();
		$formshtml = htmlspecialchars($forms);
		echo '<meta http-equiv="Content-Type" content="text/html; charset=gb2312">';
		echo "下面为生成的html表单,请自行复制,根据自己需求修改样式后粘贴到对应的模板中<br><br><textarea cols=\"100\"  rows=\"10\">".$forms."</textarea>";
		echo '<br />预览:<br /><hr>';
		echo $forms;

	}

	exit;
}
//删除自定义搜索;
else if($dopost == 'del')
{
	$mid = intval($mid);
	$dsql->ExecuteNoneQuery("Delete From `#@__advancedsearch` where mid = '$mid'; ");
	ShowMsg("成功删除一个自定义搜索!","mychannel_main.php");
	exit();
}
$row = $dsql->GetOne("Select * From `#@__channeltype` where id='$id' ");
require_once(DEDEADMIN."/templets/mychannel_edit.htm");

?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -