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

📄 field.class.php

📁 phpcms2007很好的cms内容管理系统,操作方便
💻 PHP
📖 第 1 页 / 共 2 页
字号:
			global $mod, $channelid;
			$keyid = $channelid ? $channelid : $mod;
			$openurl = defined('IN_ADMIN') ? '?mod=phpcms&file=uppic&keyid='.$keyid.'&uploadtext='.$name : PHPCMS_PATH.'upload.php?keyid='.$keyid.'&uploadtext='.$name;

			return ' <input type="button" value=" '.$LANG['upfile'].' " onClick="javascript:openwinx(\''.$openurl.'\',\'upload\',\'350\',\'200\')">';
		}
		elseif($inputtool == 'imageupload')
		{
			global $mod,$channelid;
			$keyid = $channelid ? $channelid : $mod;
			$openurl = defined('IN_ADMIN') ? '?mod=phpcms&file=uppic&keyid='.$keyid.'&uploadtext='.$name : PHPCMS_PATH.'upload.php?keyid='.$keyid.'&type=thumb&uploadtext='.$name;
            return ' <input type="button" value=" '.$LANG['uppic'].' " onClick="javascript:openwinx(\''.$openurl.'\',\'upload\',\'350\',\'350\')">';
		}
		elseif($inputtool == 'editor')
		{
			return editor($name, 'phpcms', 550, 400);
		}
	}

	function show_list($style = '<tr><td class="tablerow"><strong>$title</strong></td><td class="tablerow">$value</td></tr>')
	{
		if(!$this->fieldlist) return FALSE;
		$string = '';
		foreach($this->fieldlist as $field)
		{
		    $title = $field['title'];
			$value = $GLOBALS[$field['name']];
            $string .= str_replace(array('$title','$value'), array($title,$value), $style);
		}
        return $string;
	}

	function get_searchform($style = '<tr><td class="search_l">$title</td><td class="search_r">$input</td></tr>')
	{
		if(!$this->fieldlist) return FALSE;
		$string = '';
		foreach($this->fieldlist as $field)
		{
			if(!$field['enablesearch']) continue;
			if($field['formtype'] == 'select')
			{
				$input = "<select name='".$field['name']."' id='".$field['name']."'>\n";
				$options = explode("\n",$field['options']);
				foreach($options as $option)
				{
					if(strpos($option, '|'))
					{
						list($name, $value) = explode('|', trim($option));
					}
					else
					{
						$name = $value = trim($option);
					}
					$selected = $GLOBALS[$field['name']] == $value ? 'selected' : '';
					$input .= "<option value='".$value."' ".$selected.">".$name."</option>\n";
				}
				$input .= "</select>\n";
			}
			elseif($field['formtype'] == 'radio')
			{
				$input = '';
				$options = explode("\n",$field['options']);
				foreach($options as $option)
				{
					if(strpos($option, '|'))
					{
						list($name, $value) = explode('|', trim($option));
					}
					else
					{
						$name = $value = trim($option);
					}
					$checked = $GLOBALS[$field['name']] == $value ? 'checked' : '';
					$input .= '<input type="radio" name="'.$field['name'].'" value="'.$value.'" '.$checked.'> '.$name.' ';
				}
			}
			elseif($field['type'] == 'int')
			{
				$input = '<input type="text" name="'.$field['name'].'_from" value="'.$GLOBALS[$field['name'].'_from'].'" size="10" /> - <input type="text" name="'.$field['name'].'_to" value="'.$GLOBALS[$field['name'].'_to'].'" size="10" />';
			}
			elseif($field['type'] == 'date')
			{
				global $iscalendarinit;
				$input = '';
				if(!$iscalendarinit)
				{
					$iscalendarinit = 1;
					$input .= "<script language=\"javascript\">var imgDir = \"".PHPCMS_PATH."include/calendar/\";</script>\n<script language=\"javascript\" src=\"".PHPCMS_PATH."include/calendar/calendar.js\"></script>\n";
				}
				$input .= '<input type="text" name="'.$field['name'].'_from" value="'.$GLOBALS[$field['name'].'_from'].'" size="10" />&nbsp;<img src="'.PHPCMS_PATH.'include/calendar/date_selector.gif" border="0" align="absMiddle" style="cursor:pointer" onclick="popUpCalendar(this,document.getElementById(\''.$field['name'].'_from\'),\'yyyy-mm-dd\');">- <input type="text" name="'.$field['name'].'_to" value="'.$GLOBALS[$field['name'].'_to'].'" size="10" />&nbsp;<img src="'.PHPCMS_PATH.'include/calendar/date_selector.gif" border="0" align="absMiddle" style="cursor:pointer" onclick="popUpCalendar(this,document.getElementById(\''.$field['name'].'_to\'),\'yyyy-mm-dd\');">';
			}
			else
			{
				$input = '<input type="text" name="'.$field['name'].'" value="'.$GLOBALS[$field['name']].'" size="20" />';
			}
		    $title = $field['title'];
            $string .= str_replace(array('$title','$input'), array($title,$input), $style);
		}
        return $string;
	}

	function get_searchsql()
	{
		if(!$this->fieldlist) return FALSE;
		$sql = '';
		foreach($this->fieldlist as $field)
		{
			if(!$field['enablesearch']) continue;
			$name = $field['name'];
            if($field['formtype'] == 'select' || $field['formtype'] == 'radio')
			{
				$value = $GLOBALS[$name];
				$sql .= " AND $name='$value'";
			}
			elseif($field['type'] == 'int')
			{
				if(isset($GLOBALS[$name.'_from']) && $GLOBALS[$name.'_from'] != '')
				{
					$from = intval($GLOBALS[$name.'_from']);
                    $sql .= " AND $name>=$from";
				}
				if(isset($GLOBALS[$name.'_to']) && $GLOBALS[$name.'_to'] != '')
				{
					$to = intval($GLOBALS[$name.'_to']);
                    $sql .= " AND $name<=$to";
				}
			}
			elseif($field['type'] == 'date')
			{
				if(isset($GLOBALS[$name.'_from']) && is_date($GLOBALS[$name.'_from']))
				{
					$from = $GLOBALS[$name.'_from'];
                    $sql .= " AND $name>='$from'";
				}
				if(isset($GLOBALS[$name.'_to']) && is_date($GLOBALS[$name.'_to']))
				{
					$to = $GLOBALS[$name.'_to'];
                    $sql .= " AND $name<='$to'";
				}
			}
			elseif(isset($GLOBALS[$name]) && $GLOBALS[$name])
			{
				$value = $GLOBALS[$name];
				$sql .= " AND $name LIKE '%$value%'";
			}
		}
        return $sql;
	}

	function check_form()
	{
		global $LANG;
		foreach($this->fieldlist as $field)
		{
			$name = $field['name'];
			$value = trim($GLOBALS[$name]);
			if($field['inputlimit'] == 'notnull' && empty($value)) showmessage($field['title'].$LANG['not_null']);
			elseif($field['inputlimit'] == 'numeric' && !is_numeric($value) && !empty($value)) showmessage($field['title'].$LANG['is_numeric']);
			elseif($field['inputlimit'] == 'letter' && !preg_match("/^[a-z]+$/i", $value) && !empty($value)) showmessage($field['title'].$LANG['is_letter']);
			elseif($field['inputlimit'] == 'numeric_letter' && !preg_match("/^[0-9a-z]+$/i", $value) && !empty($value)) showmessage($field['title'].$LANG['is_numeric_or_letter']);
			elseif($field['inputlimit'] == 'email' && !is_email($value) && !empty($value)) showmessage($field['title'].$LANG['is_email']);
			elseif($field['inputlimit'] == 'date' && !is_date($value) && !empty($value)) showmessage($field['title'].$LANG['is_date']);
			elseif($field['inputlimit'] == 'unique' && $this->db->get_one("SELECT $name FROM $this->table WHERE $name='$value' ") && !empty($value)) showmessage($field['title'].$LANG['is_unique']);
		}
	}

    function listorder($listorders)
    {
		foreach($listorders as $fieldid=>$listorder)
		{
			$this->db->query("UPDATE ".TABLE_FIELD." SET listorder='$listorder' WHERE fieldid=$fieldid");
		}
    }

	function update($condition = '')
	{
		if(!$this->fieldlist) return FALSE;
		$fields = $s = ''; 
		foreach($this->fieldlist as $field)
		{
			$name = $field['name'];
			$value = $GLOBALS[$name];
			if($field['formtype'] == 'checkbox') $value = is_array($value) ? implode(',', $value) : trim($value);
			$value = $field['enablehtml'] ? str_safe($value) : new_htmlspecialchars($value);
			if($field['size'] > 0) $value = str_cut($value, $field['size'], '');
			$fields .= $s.$name."='".$value."'";
			$s = ',';
		}
		if($condition) $condition = "WHERE $condition";
		$this->db->query("UPDATE $this->table SET $fields $condition");
	}

	function cache()
	{
		cache_common();
		$this->fieldlist = $this->get_list();
		return cache_write($this->table.'_fields.php', $this->fieldlist);
	}

    function exists($name)
    {
		return $this->db->get_one("SHOW COLUMNS FROM `$this->table` like '$name' ");
	}
}
?>

⌨️ 快捷键说明

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