$SYS = Page::asset('@system/'); /**JS文件调用路径*/ $JS = Page::asset('js/'); /**CSS文件调用路径*/ $CSS = Page::asset('css/'); /**图片文件调用路径*/ $IMG = Page::asset('media/images/'); /**动画文件调用路径*/ $ANI = Page::asset('media/animations/'); /**视频文件调用路径*/ $VID = Page::asset('media/videos/'); /**声音文件调用路径*/ $SOU = Page::asset('media/sounds/'); //国际化页面文字 /**通用页面国际化信息*/ $COM = YYUC::i18n(); /**具体页面国际化*/ $TXT = YYUC::i18n_page_init(Page::$my_view); /** * select 标签 * @param array $array 待选下拉框的列表数组 * @param string $name 属性值 * @param mixed $attrs 其他属性可以是字符或者数组 */ function YYUC_tag_select(&$array, $name, $attrs = '') { $nameid = $name; global ${$name}; $value = ${$name}; if (is_array($attrs)) { $attrs = YYUC_get_attrs_from_array($attrs);
/** * 字段的 唯一性验证 * @param string $field 字段名称 * @param string $errmsg 错误信息 */ public function val_unique($field, $errmsg = null) { if (!$this->set_field_required_string($field, 'YYUCUNIQUE@' . $this->YYUCSYS_tablename . '@' . $field . '@YYUCSYSID', $errmsg === null ? YYUC::i18n('validate.unique') : $errmsg)) { $query_arr = array($field => $this->{$field}); if (trim($this->id) != '') { $query_arr['id@<>'] = $this->id; } if ($this->{$field} != '' && $this->YYUCSYS_db->has($this->YYUCSYS_real_tablename, $query_arr)) { $this->set_err_msg($field, $errmsg ? $errmsg : YYUC::i18n('validate.unique')); } } }
$_SESSION['YYUC_HTTP_REFERER_OLD'] = $_SERVER['HTTP_REFERER']; } } if ($_GET['yyuc_sessionid']) { //记录GET来的sessionid session_id($_GET['yyuc_sessionid']); session_set_cookie_params(Conf::$session_time * 60); session_start(); } if ($cacheres === false) { //是否开启调试记录 if (Conf::$need_debug_log) { Debug::benchmark('YYUC_START'); } //加载i18n配置文件数组 $I18N = YYUC::i18n(); Page::$i18n =& $I18N; if (!$_PAGE->is_sys_col) { //加载用户自定义函数 include YYUC_FRAME_PATH . '/fun/additions.php'; //执行全局启动函数 if (is_callable('yyuc_start')) { yyuc_start(); } //加载钩子方法 if (is_callable('access_validations')) { access_validations($_PAGE->controller_path); } } //进行表单令牌验证 if (isset($_POST['YYUC_FORM_TOKEN'])) {
/** * 输出联动select标签 * @param string $tn 表名称(满足 id pid name 的数据库要求 一级pid为0) * @param array $name_arr 字段名称数组 标签name * @param mixed $attrs 其他属性 可以是字符或者数组 * @param string $addwhere 附加SQL条件 * @return string 标签html字串 */ public function mulselect($tn, $name_arr, $attrs = '', $addwhere = '', $impstr = '', $autotext = true) { $seluuid = uniqid(); if (is_array($attrs)) { $attrs = YYUC_get_attrs_from_array($attrs); } $arr_len = count($name_arr); $addwherestr = ''; $pid = '0'; if (!empty($addwhere)) { $addwherestr = ' and ' . $addwhere; } $alltags = ''; $autotextstr = ''; $nopid = false; foreach ($name_arr as $index => $name) { $value = $this->{$name}; $onchange = ''; if ($index < $arr_len - 1) { if (is_array($tn)) { $ttn = $tn[$index]; $ntn = $tn[$index + 1]; if ($pid == '0') { $nopid = true; } } else { $ntn = $tn; $ttn = $tn; } $change = '"_.getnextsel(this,\'' . String::encryption($ntn) . '\',\'' . String::encryption($addwherestr) . '\')"'; $onchange = 'onchange=' . $change . ' onblur=' . $change; } else { if (is_array($tn)) { $ttn = $tn[$index]; } else { $ttn = $tn; } } if ($autotext) { $autotextstr = 'yyuc_autotext="' . $this->elname('TXT@' . $name) . '"'; } $tag = '<select seluuid="' . $seluuid . '" selindex="' . $index . '" ' . $this->field_required_string($name) . ' name="' . $this->elname($name) . '" id="' . $this->elid($name) . '" ' . $attrs . ' ' . $onchange . ' ' . $autotextstr . '>'; $tag .= '<option value="" >' . YYUC::i18n('.select_please') . '</option>'; if ($pid != null) { $m = new Model($ttn); $beg = "pid='" . $pid . "'"; if ($nopid) { $beg = "1=1"; $nopid = false; } $array = $m->where($beg . $addwherestr)->map_array('id', 'name'); $pid = null; foreach ($array as $k => $v) { $seltxt = ''; if ($k == $value) { $seltxt = 'selected="selected"'; $pid = $value; } $tag .= '<option value="' . htmlspecialchars($k) . '" ' . $seltxt . '>' . htmlspecialchars($v) . '</option>'; } } $tag .= '</select>'; if ($alltags != '') { $alltags = $alltags . $impstr; } $alltags .= $tag; } return $alltags; }
/** * 输出联动select标签 * @param string $tn 表名称(满足 id pid name 的数据库要求 一级pid为0) * @param array $name_arr 字段名称数组 标签name * @param mixed $attrs 其他属性 可以是字符或者数组 * @param string $addwhere 附加SQL条件 * @return string 标签html字串 */ public function mulselect($tn, $name_arr, $attrs = '', $addwhere = '', $impstr = '') { if (is_array($attrs)) { $attrs = YYUC_get_attrs_from_array($attrs); } $arr_len = count($name_arr); $addwherestr = ''; $pid = '0'; if (!empty($addwhere)) { $addwherestr = ' and ' . $addwhere; } $alltags = ''; $m = new Model($tn); foreach ($name_arr as $index => $name) { $value = $this->{$name}; $onchange = $index < $arr_len - 1 ? 'onchange="YYUC_getnextsel(this,\'' . String::encryption($tn) . '\',\'' . String::encryption($addwherestr) . '\')"' : ''; $tag = '<select ' . $this->field_required_string($name) . ' name="' . $this->elname($name) . '" id="' . $this->elid($name) . '" ' . $attrs . ' ' . $onchange . '>'; $tag .= '<option value="" >' . YYUC::i18n('.select_please') . '</option>'; if ($pid != null) { $array = $m->where("pid='" . $pid . "'" . $addwherestr)->map_array('id', 'name'); $pid = null; foreach ($array as $k => $v) { $seltxt = ''; if ($k == $value) { $seltxt = 'selected="selected"'; $pid = $value; } $tag .= '<option value="' . htmlspecialchars($k) . '" ' . $seltxt . '>' . htmlspecialchars($v) . '</option>'; } } $tag .= '</select>'; if ($alltags != '') { $alltags = $alltags . $impstr; } $alltags .= $tag; } return $alltags; }
/** * 读取特定的i18n配置信息 * * @param string $name */ function i18n($name = '') { return YYUC::i18n($name); }