вопрос
Здравствуйте.
Есть php файл из поста http://zerocoolpro.biz/forum/threads/besplatnaja-pomosch-dlja-vas-po-dle.4930/page-9#post-157661
автор PunPun.
Залить файл CountXField.php в папку /engine/modules/
В нужном месте любого шаблона прописать:
Код:
{include file="engine/modules/CountXField.php?xf_name=test&xf_value=Музыка"}
Где xf_name - название доп поля на латинице
Где xf_value - нужное значение
Как сделать чтобы файл открывался в адресной строке?
Пробовал так
Но к сожалению не работает.
Есть php файл из поста http://zerocoolpro.biz/forum/threads/besplatnaja-pomosch-dlja-vas-po-dle.4930/page-9#post-157661
автор PunPun.
<?PHP
$xf_value = $db->safesql(trim(stripslashes(strip_tags($xf_value))));
$xf_name = $db->safesql(trim(stripslashes(strip_tags($xf_name))));
$is_change = false;
if($config['allow_cache'] != '1')
{
$config['allow_cache'] = '1';
$is_change = true;
}
$CountXField = false;
$CountXField = dle_cache( "news_cxf_" . totranslit( stripslashes( $xf_value ), true, false ), $config['skin'] . $xf_name, false);
if(!$CountXField)
{
$sql = $db->super_query("SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE SUBSTRING_INDEX( SUBSTRING_INDEX( xfields, '{$xf_name}|', -1 ) , '||', 1 ) LIKE '%{$xf_value}%'");
$CountXField = intval($sql['count']);
create_cache( "news_cxf_" . totranslit( stripslashes( $xf_value ), true, false ), $CountXField, $config['skin'] . $xf_name, false );
if($is_change) $config['allow_cache'] = false;
}
echo $CountXField;
?>
Залить файл CountXField.php в папку /engine/modules/
В нужном месте любого шаблона прописать:
Код:
{include file="engine/modules/CountXField.php?xf_name=test&xf_value=Музыка"}
Где xf_name - название доп поля на латинице
Где xf_value - нужное значение
Как сделать чтобы файл открывался в адресной строке?
Пробовал так
<?PHP
$xf_name = ((int) $_GET['xf_name'] > 0) ? (int) $_GET['xf_name'] : false;
$xf_value = ((int) $_GET['xf_name'] > 0) ? (int) $_GET['xf_name'] : false;
//$xf_value = $db->safesql(trim(stripslashes(strip_tags($xf_value))));
//$xf_name = $db->safesql(trim(stripslashes(strip_tags($xf_name))));
@error_reporting ( E_ALL ^ E_WARNING ^ E_NOTICE );
@ini_set ( 'display_errors', true );
@ini_set ( 'html_errors', false );
@ini_set ( 'error_reporting', E_ALL ^ E_WARNING ^ E_NOTICE );
define( 'DATALIFEENGINE', true );
define( 'ROOT_DIR', substr( dirname( __FILE__ ), 0, -12 ) );
define( 'ENGINE_DIR', ROOT_DIR . '/engine' );
include ENGINE_DIR . '/data/config.php';
date_default_timezone_set ( $config['date_adjust'] );
if ($config['http_home_url'] == "") {
$config['http_home_url'] = explode("engine/ajax/CountXField.php", $_SERVER['PHP_SELF']);
$config['http_home_url'] = reset($config['http_home_url']);
$config['http_home_url'] = "http://" . $_SERVER['HTTP_HOST'] . $config['http_home_url'];
}
require_once ENGINE_DIR . '/classes/mysql.php';
require_once ENGINE_DIR . '/data/dbconfig.php';
require_once ENGINE_DIR . '/modules/functions.php';
require_once ENGINE_DIR . '/classes/templates.class.php';
dle_session();
$is_logged = false;
$member_id = array();
$user_group = get_vars("usergroup");
if (!$user_group) {
$user_group = array();
$db->query("SELECT * FROM " . USERPREFIX . "_usergroups ORDER BY id ASC");
while ($row = $db->get_row()) {
$user_group[$row['id']] = array();
foreach ($row as $key => $value) {
$user_group[$row['id']][$key] = stripslashes($value);
}
}
set_vars("usergroup", $user_group);
$db->free();
}
if (!$is_logged) {
$member_id['user_group'] = 5;
}
if ($config['allow_registration']) {
require_once ENGINE_DIR . '/modules/sitelogin.php';
}
$is_change = false;
if($config['allow_cache'] != '1')
{
$config['allow_cache'] = '1';
$is_change = true;
}
$CountXField = false;
$CountXField = dle_cache( "news_cxf_" . totranslit( stripslashes( $xf_value ), true, false ), $config['skin'] . $xf_name, false);
if(!$CountXField)
{
$sql = $db->super_query("SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE SUBSTRING_INDEX( SUBSTRING_INDEX( xfields, '{$xf_name}|', -1 ) , '||', 1 ) LIKE '%{$xf_value}%'");
$CountXField = intval($sql['count']);
create_cache( "news_cxf_" . totranslit( stripslashes( $xf_value ), true, false ), $CountXField, $config['skin'] . $xf_name, false );
if($is_change) $config['allow_cache'] = false;
}
@header("Content-type: text/html; charset=" . $config['charset']);
echo $CountXField;
?>
в адресной строке /engine/ajax/CountXField.php?xf_name=test&xf_value=МузыкаНо к сожалению не работает.