Группа: Пользователь Ранг: Новичок Регистрация: 16.01.2010 Город: 353500 | Да, головоломка. В старом файле, который называется Func.Mod.php за вывод энциклопедии отвечает вот такой код: function autowords($text) { $sql = ArraySet('FetchArray', 'glossar', '*', "WHERE Aktiv='1'"); foreach($sql as $arr) { if($arr['Wort'] != '') { $s = explode('||', $arr['Wort']); while(list($key, $val) = each($s)) { $w = htmlspecialchars($val); if($arr['Typ'] == 0) { $replacement = '<a class="autowords colorbox_small" href="index.php?p=misc&do=autowords&id='.$arr['Id'].'">'.$w.'</a>'; } else { $replacement = '<a title="" href="'.$arr['Beschreibung'].'" style="color:windowtext;text-decoration:none;text-underline:none;cursor:text">'.$w.'</a>'; } $text = preg_replace('#([ |\n|>|"])'.$w.'([ |.|,|!|?|:|;|"])(?![^<]+>)#i', '\\1'.$replacement.'\\2', $text); } } } return $text; }
|
В новом файле, который называется functions.php за вывод отвечает вот такой код: function autowords($text) { $sql = System::ArraySet('Result_Fetch_Array', 'glossar', '*', "WHERE Aktiv='1'"); if (!empty($sql)) { foreach ($sql as $arr) { $s = explode('||', $arr['Wort']); while (list($key, $val) = each($s)) { $w = sysspecialchars($val); if ($arr['Typ'] == 0) { $replacement = '<a class="autowords colorbox_small" href="index.php?p=misc&do=autowords&id=' . $arr['Id'] . '">' . $w . '</a>'; } else { $replacement = '<a title="" href="' . $arr['Beschreibung'] . '" style="color:windowtext;text-decoration:none;text-underline:none;cursor:text">' . $w . '</a>'; } $text = preg_replace('#([ |\n|>|;])' . $w . '([ |.|,|!|?|:|;|&])(?![^<]+>)#i', '\\1' . $replacement . '\\2', $text); } } } return $text; }
|
Вопрос: можно ли заменить старый код на новый? Не приведёт ли это к падению сайта, как у меня однажды было на четвёртом Куби? Примечание: все работы проводятся на "живом" проекте, на удалённом хостинге. |