При формировании ссылок в виде ЧПУ использую функцию
/**
* Function of formation of GET-parametres
* Функция формирования GET-параметров
*/
function href()
{
global $GET; // Объявляем массив $GET, сформированный ранее, глобальным
$tmp = $GET; //Переписываем переменную, что бы не влиять на глобальный массив
$href = '';
$arg = func_get_args(); // Получаем массив аргументов переданных в функцию href(тут_вот)
if($arg[0] == 'host') // Это для того, что бы сделать ссылку без параметров
return IRB_HOST;
foreach($arg as $var) // Перебираем полученные аргументы
{
$param = explode('=', $var); // Разделяем имя переменной и значение (page=gallery, например)
// Если в массиве $GET ($tmp) есть ключ, полученный выше (в данном случае 'page')
if(array_key_exists($param[0], $tmp))
$tmp[$param[0]] = $param[1]; // То этому ключу присваиваем полученное значение
else
die('The variable <b>'. $param[0] .'</b> is not defined'); // Иначе...
}
$cnt = array_flip(array_keys($tmp)); // обрезаем те параметры, которые не передавались в аргумент
$tmp = array_slice($tmp, 0, $cnt[$param[0]] + 1);
foreach($tmp as $var => $val) // Теперь поочередно вставляем значения из $GET ($tmp) в ссылку
if(IRB_REWRITE == 'on')
$href .= '/'. $val; // Если реврайт включен, через слэш
elseif(!empty($val))
$href .= '&'. $var .'='. $val; // Если нет = обычные GET параметры
if(IRB_REWRITE == 'on')
return IRB_HOST . trim($href, '/');
else
return IRB_HOST .'?'. trim($href, '&');
}
А когда запускаю indexу меня вместо ссылок вида main\2\ получается
<li><a href="<!--error--><br />
<b>Notice</b>: Undefined variable: host in <b>F:\home\my-site.ua\www\libs\default.php</b> on line <b>61</b><br />
<script language=JavaScript src='/denwer/errors/phperror_js.php'></script>main">Главная страница</a></li>
Когда убираю в index.php уровень ошибок error_reporting(E_ALL); все работает нормально
Спустя 11 минут, 19 секунд (4.02.2011 - 15:10) Zerstoren написал(а):
переменной хост host нету. Загляните в F:\home\my-site.ua\www\libs\default.php на строку 61
видимо вы ее не объявили.
И в этом скрипте ее нету
видимо вы ее не объявили.
И в этом скрипте ее нету
Спустя 8 минут, 20 секунд (4.02.2011 - 15:18) kent666 написал(а):
Да действительно
В исходнике в уроке 3 ядро сайта ссылка - "лепота"
в архиве файл default.php
вместо IRB_HOST стоит $host )))
В исходнике в уроке 3 ядро сайта ссылка - "лепота"
в архиве файл default.php
вместо IRB_HOST стоит $host )))
Спустя 4 часа, 35 минут, 3 секунды (4.02.2011 - 19:53) Zerstoren написал(а):
Кент, как только вы видите ошибку, то сразу идите туда, куда она вас посылает.
исключая ошибку типа $end т.к. это трабла со скобками и вы отправляетесь на последнею строку.
Вообще с ошибками в пыхе все легко
исключая ошибку типа $end т.к. это трабла со скобками и вы отправляетесь на последнею строку.
Вообще с ошибками в пыхе все легко
Спустя 24 дня, 20 часов, 20 минут, 18 секунд (1.03.2011 - 16:13) Guest написал(а):
