Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » Как запустить php файл в адресной строке?

Как запустить php файл в адресной строке?


     21.08.2017    php    Все вопросы » Общие вопросы по PHP    1530

вопрос
Здравствуйте.
Есть 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=Музыка

Но к сожалению не работает.

Ответа пока нет


Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх