Вопрос: Что там значит "and"
Насколько я знаю в PHP такого ключевого слова нет. Есть &&.
Это первое.
Второе. Я сталкивался со схожей проблемой - когда у форума было два адреса. Обошел я это на мой взгляд достаточно элегантно:
1. добавил переменную 'o_base_url2' в конфиг (в таблицу config).
2. функция confirm_referer стала такой:
function confirm_referrer($script)
{
global $pun_config, $lang_common;
$ref=$_SERVER['HTTP_REFERER'];
if (!$ref) $ref='';
$pat=pun_preg_quote($pun_config['o_base_url2'].'/'.$script);
if (!preg_match('#^'.$pat.'#i', $ref))
message($lang_common['Bad referrer']);
}
и еще добавил функцию (перед confirm_referer):
// Make sure that HTTP_REFERER matches $pun_config['o_base_url']/$script
// Symbols (,),[,],|,? are used as regexped, all others are quoted.
function pun_preg_quote($quote)
{
$pat=preg_quote($quote);
$a=array('\(','\)','\|','\?','\[','\]');
$b=array( '(', ')', '|', '?', '[', ']');
$pat=str_replace($a,$b,$pat);
return $pat;
}
3. в admin_option.php после
<th scope="row">Base URL</th>
<td>
<input type="text" name="form[base_url]" size="50" maxlength="100" value="<?php echo $pun_config['o_base_url'] ?>" />
<span>The complete URL of the forum without trailing slash (i.e. http://www.mydomain.com/forums). This <strong>must</strong> be correct in order for all admin and moderator features to work. If you get "Bad referer" errors, it's probably incorrect.</span>
</td>
</tr>
добавил
<tr>
<th scope="row">Forum referer confirmation </th>
<td>
<input type="text" name="form[base_url2]" size="50" maxlength="100" value="<?php echo $pun_config['o_base_url2'] ?>" />
<span>This URL is like above (maybe exact copy), but it can contain regexp symbols "[]()?|" for multiple forum domain acception (such as localhost or intranet address).</span>
</td>
</tr>
В результате этих манипуляций в опциях у нас будет возможность вводить адрес для конфирма. Старый адрес остается как бы "визуальный", официальный, а второй - в виде упрощенного regexp'а, для подтверждения.
Еще там имеется ссылка на конфирмейшн в misc.php во время отсылки сообщения пользователю через email. Этот момент я не прорабатывал.
У меня это поле равно (для примера) http://(10.8.109.242|localhost|127.0.0.1)/forum