URL в LEECH в Dle - перекодируются символы

[Удален]
1136

День добрый!

Нашёл скрипт, которые заменяет во всех новостях прямые ссылки на ссылки с редиректом.

<?php 


set_time_limit( 0 );
define ( "DATALIFEENGINE", true );
define ( "ROOT_DIR", dirname ( __FILE__ ));
define ( "ENGINE_DIR", ROOT_DIR . "/engine/" );
require_once ROOT_DIR . '/engine/classes/mysql.php';
require_once ROOT_DIR . '/engine/data/config.php';
require_once ROOT_DIR . '/engine/data/dbconfig.php';
require_once ROOT_DIR . '/engine/classes/parse.class.php';
$sql_result = $db->query ( "SELECT * FROM " . PREFIX . "_post" );
$parse = new ParseFilter(Array(), Array(), 1, 1);
while ( $row = $db->get_row ( $sql_result ))
{
$short_story = $parse->decodeBBCodes( $row['short_story'], false );
$full_story = $parse->decodeBBCodes( $row['full_story'], false );
$short_story = str_replace ( "
$full_story = str_replace ( "
$short_story = str_replace ( "" title="", "[leech]", $full_story );
$short_story = str_replace ( "" target="_blank">", "[leech]", $full_story );
$short_story = str_replace ( "", "[/leech]", $short_story );
$full_story = str_replace ( ["/url]", "[/leech]", $full_story );
$short_story = $db->safesql ( $parse->BB_Parse( $parse->process( $short_story ), false));
$full_story = $db->safesql ( $parse->BB_Parse( $parse->process( $full_story ), false));
$db->query ( "UPDATE " . PREFIX . "_post SET short_story = '{$short_story}', full_story = '{$full_story}' WHERE id = '{$row['id']}'" );
}
$db->free();
?> " title="", "[leech]", $short_story );
$full_story = str_replace ( "
$short_story = str_replace ( "" title="", "[leech]", $full_story );
$short_story = str_replace ( "" target="_blank">", "[leech]", $full_story );
$short_story = str_replace ( "", "[/leech]", $short_story );
$full_story = str_replace ( ["/url]", "[/leech]", $full_story );
$short_story = $db->safesql ( $parse->BB_Parse( $parse->process( $short_story ), false));
$full_story = $db->safesql ( $parse->BB_Parse( $parse->process( $full_story ), false));
$db->query ( "UPDATE " . PREFIX . "_post SET short_story = '{$short_story}', full_story = '{$full_story}' WHERE id = '{$row['id']}'" );
}
$db->free();
?> " target="_blank">", "[leech]", $short_story );
$full_story = str_replace ( "
$short_story = str_replace ( "" title="", "[leech]", $full_story );
$short_story = str_replace ( "" target="_blank">", "[leech]", $full_story );
$short_story = str_replace ( "", "[/leech]", $short_story );
$full_story = str_replace ( ["/url]", "[/leech]", $full_story );
$short_story = $db->safesql ( $parse->BB_Parse( $parse->process( $short_story ), false));
$full_story = $db->safesql ( $parse->BB_Parse( $parse->process( $full_story ), false));
$db->query ( "UPDATE " . PREFIX . "_post SET short_story = '{$short_story}', full_story = '{$full_story}' WHERE id = '{$row['id']}'" );
}
$db->free();
?>

Код делает свою работу, только есть побочный эффект: символы вроде < " становится вида &nbsp;

Скажите, что здесь нужно поменяь?

ReJ добавил 18.12.2009 в 15:48

Если над скриптом нужно немного поработать, готов компенсировать труд $$

CN
На сайте с 12.12.2008
Offline
135
#1

Тут вроде опечатка $full_story = str_replace ( ["/url]", "[/leech]", $full_story );

А надо $full_story = str_replace ( "", "[/leech]", $full_story );

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий