本文整理汇总了PHP中phemplate::drop_var方法的典型用法代码示例。如果您正苦于以下问题:PHP phemplate::drop_var方法的具体用法?PHP phemplate::drop_var怎么用?PHP phemplate::drop_var使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类phemplate
的用法示例。
在下文中一共展示了phemplate::drop_var方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: array
$loop = array();
if (!empty($totalrows)) {
if ($o >= $totalrows) {
$o = $totalrows - $r;
$o = $o >= 0 ? $o : 0;
}
$query = "SELECT * FROM {$from} WHERE {$where} ORDER BY `news_id` DESC LIMIT {$o},{$r}";
if (!($res = @mysql_query($query))) {
trigger_error(mysql_error(), E_USER_ERROR);
}
while ($rsrow = mysql_fetch_assoc($res)) {
$rsrow['news_title'] = sanitize_and_format($rsrow['news_title'], TYPE_STRING, $__field2format[TEXT_DB2DISPLAY]);
$loop[] = $rsrow;
}
$output['pager2'] = pager($totalrows, $o, $r);
}
$output['return2me'] = 'site_news.php';
if (!empty($_SERVER['QUERY_STRING'])) {
$output['return2me'] .= '?' . $_SERVER['QUERY_STRING'];
}
$output['return2me'] = rawurlencode($output['return2me']);
$tpl->set_file('content', 'site_news.html');
$tpl->set_loop('loop', $loop);
$tpl->set_var('output', $output);
$tpl->process('content', 'content', TPL_LOOP | TPL_NOLOOP);
$tpl->drop_loop('loop');
$tpl->drop_var('output.pager2');
unset($loop);
$tplvars['title'] = 'Site news';
$tplvars['page'] = 'site_news';
include 'frame.php';
示例2: pager
$temp = $user_cache->get_cache_array($user_ids, 'result_user', $inject_by_uid);
if (!empty($temp)) {
$output['results'] = smart_table($temp, 5, $rv_mode, $cell_css_classes);
$output['pager2'] = pager($output['totalrows'], $o, $r);
} else {
unset($output['totalrows']);
}
unset($user_cache, $temp);
if (!$skip_cache) {
// set $_GET for the pager.
$_GET = array('search' => $output['search_md5'], 'v' => !empty($_GET['v']) ? $_GET['v'] : 'l');
}
} else {
unset($output['totalrows']);
}
$output['lang_253'] = sanitize_and_format($GLOBALS['_lang'][253], TYPE_STRING, $__field2format[TEXT_DB2DISPLAY]);
$output['lang_254'] = sanitize_and_format($GLOBALS['_lang'][254], TYPE_STRING, $__field2format[TEXT_DB2DISPLAY]);
$tpl->set_file('content', 'search.html');
$tpl->set_var('output', $output);
$tpl->process('content', 'content', TPL_OPTIONAL);
$tpl->drop_var('output.results');
$tpl->drop_var('output.pager2');
unset($output['results'], $output['pager2']);
$tplvars['title'] = $GLOBALS['_lang'][107];
$tplvars['page_title'] = $GLOBALS['_lang'][107];
$tplvars['page'] = 'search';
$tplvars['css'] = 'search.css.php';
if (is_file('search_left.php')) {
include 'search_left.php';
}
include 'frame.php';
示例3: phemplate
$topass['message']['type'] = MESSAGE_ERROR;
$topass['message']['text'] = 'Please enter the subject.';
}
if (empty($input['reject_reason'])) {
$error = true;
$topass['message']['type'] = MESSAGE_ERROR;
$topass['message']['text'] = 'Please enter the reason.';
}
}
if (!$error) {
$tpl = new phemplate(_BASEPATH_ . '/skins_site/' . $def_skin . '/', 'remove_nonjs');
$tpl->set_file('temp', 'emails/general.html');
$tpl->set_var('output.content', $input['reject_reason']);
$tpl->set_var('tplvars', $tplvars);
$input['reject_reason'] = $tpl->process('temp', 'temp', TPL_FINISH | TPL_OPTIONAL | TPL_INCLUDE);
$tpl->drop_var('temp');
$tpl->drop_var('output.content');
$reject_reason_email = $input['reject_reason'];
// for email
$input['reject_reason'] = sanitize_and_format($input['reject_reason'], TYPE_STRING, $__field2format[FIELD_TEXTAREA]);
switch ($input['t']) {
case AMTPL_REJECT_MEMBER:
$query = "UPDATE `{$dbtable_prefix}user_profiles` SET `status`=" . STAT_EDIT . ",`last_changed`='" . gmdate('YmdHis') . "',`reject_reason`='" . $input['reject_reason'] . "' WHERE `fk_user_id`=" . $input['id'];
if (!($res = @mysql_query($query))) {
trigger_error(mysql_error(), E_USER_ERROR);
}
if (!empty($input['send_email'])) {
$query = "SELECT `email` FROM `" . USER_ACCOUNTS_TABLE . "` WHERE `" . USER_ACCOUNT_ID . "`=" . $input['id'];
if (!($res = @mysql_query($query))) {
trigger_error(mysql_error(), E_USER_ERROR);
}
示例4: regenerate_skin_cache
function regenerate_skin_cache($skin_module_code = '', $last_id = 0)
{
$timeout = 120;
require _BASEPATH_ . '/includes/classes/Cache/Lite.php';
$cache = new Cache_Lite($GLOBALS['_cache_config']);
global $dbtable_prefix, $_pfields, $_pcats, $__field2format;
$tpl = new phemplate(_BASEPATH_ . '/skins_site/', 'remove_nonjs');
if (empty($skin_module_code)) {
$query = "SELECT b.`config_value` as `skin_dir` FROM `{$dbtable_prefix}modules` a,`{$dbtable_prefix}site_options3` b WHERE a.`module_type`=" . MODULE_SKIN . " AND a.`module_code`=b.`fk_module_code` AND b.`config_option`='skin_dir'";
} else {
$query = "SELECT `config_value` as `skin_dir` FROM `{$dbtable_prefix}site_options3` WHERE `config_option`='skin_dir' AND `fk_module_code`='{$skin_module_code}'";
}
if (!($res = @mysql_query($query))) {
trigger_error(mysql_error(), E_USER_ERROR);
}
for ($i = 0; $i < mysql_num_rows($res); ++$i) {
$skins[] = mysql_result($res, $i, 0);
}
$now = gmdate('YmdHis');
$select = '`fk_user_id`,`status`,`del`,UNIX_TIMESTAMP(`last_changed`) as `last_changed`,UNIX_TIMESTAMP(`date_added`) as `date_added`,`_user`,`_photo`,`rad_longitude`,`rad_latitude`';
$used_fields = array();
foreach ($_pfields as $field_id => $field) {
if ($field->config['visible']) {
$select .= ',' . $field->query_select();
$used_fields[] = $field_id;
}
}
// create the cache in every skin
for ($s = 0; isset($skins[$s]); ++$s) {
$GLOBALS['_lang'] = array();
$GLOBALS['_pfields'] = array();
$GLOBALS['_pcats'] = array();
include _BASEPATH_ . '/skins_site/' . $skins[$s] . '/lang/global.inc.php';
include _BASEPATH_ . '/includes/fields.inc.php';
$query = "SELECT {$select} FROM `{$dbtable_prefix}user_profiles` WHERE `status`=" . STAT_APPROVED;
if (!empty($last_id)) {
$query .= " AND `fk_user_id`>{$last_id}";
}
$query .= " ORDER BY `fk_user_id`";
if (!($res = @mysql_query($query))) {
trigger_error(mysql_error(), E_USER_ERROR);
}
$start_time = (int) time();
while ($profile = mysql_fetch_assoc($res)) {
for ($i = 0; isset($used_fields[$i]); ++$i) {
$field =& $_pfields[$used_fields[$i]];
$field->set_value($profile, false);
$profile[$field->config['dbfield']] = $field->display();
// the label should be set after the call to display(). See field_birthdate::display() for explanation.
$profile[$field->config['dbfield'] . '_label'] = $field->config['label'];
}
if (empty($profile['_photo']) || !is_file(_PHOTOPATH_ . '/t1/' . $profile['_photo']) || !is_file(_PHOTOPATH_ . '/t2/' . $profile['_photo']) || !is_file(_PHOTOPATH_ . '/' . $profile['_photo'])) {
$profile['_photo'] = 'no_photo.gif';
} else {
$profile['has_photo'] = true;
}
$tpl->set_var('profile', $profile);
// generate the user details for result lists
$tpl->set_file('temp', $skins[$s] . '/static/result_user.html');
$towrite = $tpl->process('', 'temp', TPL_OPTIONAL);
$cache->save($towrite, 'skin' . $skins[$s] . $profile['fk_user_id'] . 'result_user');
// generate the categories to be used on profile.php page
$categs = array();
$tpl->set_file('temp', $skins[$s] . '/static/profile_categ.html');
foreach ($_pcats as $pcat_id => $pcat) {
$fields = array();
$j = 0;
for ($k = 0; isset($pcat['fields'][$k]); ++$k) {
if (in_array($pcat['fields'][$k], $used_fields) && !empty($profile[$_pfields[$pcat['fields'][$k]]->config['dbfield']])) {
$fields[$j]['label'] = $profile[$_pfields[$pcat['fields'][$k]]->config['dbfield'] . '_label'];
$fields[$j]['field'] = $profile[$_pfields[$pcat['fields'][$k]]->config['dbfield']];
$fields[$j]['dbfield'] = $_pfields[$pcat['fields'][$k]]->config['dbfield'];
++$j;
}
}
$categs['pcat_name'] = $pcat['pcat_name'];
$categs['pcat_id'] = $pcat_id;
$tpl->set_loop('fields', $fields);
$tpl->set_var('categs', $categs);
$towrite = $tpl->process('', 'temp', TPL_LOOP);
$cache->save($towrite, 'skin' . $skins[$s] . $profile['fk_user_id'] . 'pcat' . $pcat_id);
$tpl->drop_loop('fields');
$tpl->drop_var('categs');
}
$tpl->drop_var('profile');
if ((int) time() - $start_time > $timeout) {
echo 'To prevent timeouts this script interrupts every few minutes. Press the continue button to resume.<br />';
echo 'Last user ID processed: ', $profile['fk_user_id'], '<br />';
echo '<form action="regenerate_skin.php" method="get">';
echo '<input type="hidden" name="last_id" value="', $profile['fk_user_id'], '" />';
if (!empty($skin_module_code)) {
echo '<input type="hidden" name="s" value="', $skin_module_code, '" />';
}
echo '<input type="submit" value="Continue" />';
echo '</form>';
die;
}
}
}
}
示例5: gen_user_cache
function gen_user_cache()
{
global $dbtable_prefix, $_pfields, $_pcats;
$dirname = dirname(__FILE__);
$temp = array();
if ($dirname[0] == '/') {
// unixes here
$temp = explode('/', $dirname);
} else {
// windows here
$temp = explode('\\', $dirname);
}
$interval = (int) $temp[count($temp) - 1];
// that's how often we're executed ;)
$tpl = new phemplate(_BASEPATH_ . '/skins_site/', 'remove_nonjs');
$query = "SELECT a.`config_value` FROM `{$dbtable_prefix}site_options3` a,`{$dbtable_prefix}modules` b WHERE a.`config_option`='skin_dir' AND a.`fk_module_code`=b.`module_code` AND b.`module_type`=" . MODULE_SKIN;
if (!($res = @mysql_query($query))) {
trigger_error(mysql_error(), E_USER_ERROR);
}
$skins = array();
for ($i = 0; $i < mysql_num_rows($res); ++$i) {
$skins[] = mysql_result($res, $i, 0);
}
require _BASEPATH_ . '/includes/classes/Cache/Lite.php';
$cache = new Cache_Lite($GLOBALS['_cache_config']);
$now = gmdate('YmdHis');
$select = '`fk_user_id`,`status`,`del`,UNIX_TIMESTAMP(`last_changed`) as `last_changed`,UNIX_TIMESTAMP(`date_added`) as `date_added`,`_user`,`_photo`,`rad_longitude`,`rad_latitude`';
$used_fields = array();
foreach ($_pfields as $field_id => $field) {
if ($field->config['visible']) {
$select .= ',' . $field->query_select();
$used_fields[] = $field_id;
}
}
// create the cache in every skin
for ($s = 0; isset($skins[$s]); ++$s) {
$GLOBALS['_lang'] = array();
$GLOBALS['_pfields'] = array();
$GLOBALS['_pcats'] = array();
include _BASEPATH_ . '/skins_site/' . $skins[$s] . '/lang/global.inc.php';
include _BASEPATH_ . '/includes/fields.inc.php';
$query = "SELECT {$select} FROM `{$dbtable_prefix}user_profiles` WHERE `status`=" . STAT_APPROVED . " AND `last_changed`>=DATE_SUB('{$now}',INTERVAL " . ($interval + 2) . " MINUTE)";
//print $query;
if (!($res = @mysql_query($query))) {
trigger_error(mysql_error(), E_USER_ERROR);
}
while ($profile = mysql_fetch_assoc($res)) {
for ($i = 0; isset($used_fields[$i]); ++$i) {
$field =& $_pfields[$used_fields[$i]];
$field->set_value($profile, false);
$profile[$field->config['dbfield']] = $field->display();
// the label should be set after the call to display(). See field_birthdate::display() for explanation.
$profile[$field->config['dbfield'] . '_label'] = $field->config['label'];
/*
} elseif ($field['field_type']==FIELD_INT || $field['field_type']==FIELD_FLOAT) {
// $profile[$field['dbfield']]=$profile[$field['dbfield']];
*/
}
if (empty($profile['_photo']) || !is_file(_PHOTOPATH_ . '/t1/' . $profile['_photo']) || !is_file(_PHOTOPATH_ . '/t2/' . $profile['_photo']) || !is_file(_PHOTOPATH_ . '/' . $profile['_photo'])) {
$profile['_photo'] = 'no_photo.gif';
} else {
$profile['has_photo'] = true;
}
$tpl->set_var('profile', $profile);
// generate the user details for result lists
$tpl->set_file('temp', $skins[$s] . '/static/result_user.html');
$towrite = $tpl->process('', 'temp', TPL_OPTIONAL);
$cache->save($towrite, 'skin' . $skins[$s] . $profile['fk_user_id'] . 'result_user');
// generate the categories to be used on profile.php page
$categs = array();
$tpl->set_file('temp', $skins[$s] . '/static/profile_categ.html');
foreach ($_pcats as $pcat_id => $pcat) {
$fields = array();
$j = 0;
for ($k = 0; isset($pcat['fields'][$k]); ++$k) {
if (in_array($pcat['fields'][$k], $used_fields) && !empty($profile[$_pfields[$pcat['fields'][$k]]->config['dbfield']])) {
$fields[$j]['label'] = $profile[$_pfields[$pcat['fields'][$k]]->config['dbfield'] . '_label'];
$fields[$j]['field'] = $profile[$_pfields[$pcat['fields'][$k]]->config['dbfield']];
$fields[$j]['dbfield'] = $_pfields[$pcat['fields'][$k]]->config['dbfield'];
++$j;
}
}
$categs['pcat_name'] = $pcat['pcat_name'];
$categs['pcat_id'] = $pcat_id;
$tpl->set_loop('fields', $fields);
$tpl->set_var('categs', $categs);
$towrite = $tpl->process('', 'temp', TPL_LOOP);
$cache->save($towrite, 'skin' . $skins[$s] . $profile['fk_user_id'] . 'pcat' . $pcat_id);
$tpl->drop_loop('fields');
$tpl->drop_var('categs');
}
$tpl->drop_var('profile');
}
}
return true;
}
示例6: send_template_email
function send_template_email($to, $subject, $template, $skin, $output = array(), $message_body = '')
{
$myreturn = true;
if (empty($message_body)) {
if (isset($GLOBALS['tpl'])) {
global $tpl;
$old_root = $tpl->get_root();
$tpl->set_root(_BASEPATH_ . '/skins_site/' . $skin . '/');
} else {
$tpl = new phemplate(_BASEPATH_ . '/skins_site/' . $skin . '/', 'remove_nonjs');
}
$tpl->set_file('temp', 'emails/' . $template);
if (!empty($output)) {
$tpl->set_var('output', $output);
}
global $tplvars;
$tpl->set_var('tplvars', $tplvars);
$message_body = $tpl->process('temp', 'temp', TPL_LOOP | TPL_OPTLOOP | TPL_OPTIONAL | TPL_FINISH);
$tpl->drop_var('temp');
$tpl->drop_var('output');
}
$config = get_site_option(array('mail_from', 'mail_crlf'), 'core');
require_once _BASEPATH_ . '/includes/classes/phpmailer.class.php';
$mail = new PHPMailer();
$mail->IsHTML(true);
$mail->From = $config['mail_from'];
$mail->Sender = $config['mail_from'];
$mail->FromName = _SITENAME_;
if ($config['mail_crlf']) {
$mail->LE = "\r\n";
} else {
$mail->LE = "\n";
}
$mail->IsMail();
$mail->AddAddress($to);
$mail->Subject = $subject;
$mail->Body = $message_body;
if (!$mail->Send()) {
$myreturn = false;
$GLOBALS['topass']['message']['type'] = MESSAGE_ERROR;
$GLOBALS['topass']['message']['text'] = $mail->ErrorInfo;
require_once _BASEPATH_ . '/includes/classes/log_error.class.php';
new log_error(array('module_name' => 'send_template_email', 'text' => 'sending mail to ' . $to . ' failed:' . $message_body));
}
if (isset($old_root)) {
$tpl->set_root($old_root);
}
return $myreturn;
}