Вопрос № 64894: Здравствуйте!
Как послать ошибку error 404? В шаблоне открываю запрошенный файл, перед открытием делаю проверку его существования. Если файла нет показываю страничку с сообщением об ошибке.
Но ведь это не всё, нужно сообщить клиенту об о...Вопрос № 64908: Добрый день, уважаемые эксперты.
Столкнулся со следующей проблемой:
php "не видит" некоторых своих ключевых слов. Один из примеров:
class DocsList{
public function Select() {
//....
}
}
Выдает ошибку: pa...Вопрос № 64929: Здравствуйте, уважаемые эксперты.
У меня такой вопрос: Как можно просмотреть переменные отсылаемые скрипту? Поясню: я пользуюсь уже готовым скриптом, нужно внести небольшое изменение. Так же, есть документация к программе, где написано как э...Вопрос № 64952: 1). Подскажите, пожалуйста, скрипт, при котором пользователь может (безо всякой авторизации) менять внешний вид сайта (только для себя, конечно) -но не весь. Например, как это на сайте expresshost.net.ru (поменять можно цветовую гамму)
2). Подска...
Вопрос № 64.894
Здравствуйте!
Как послать ошибку error 404? В шаблоне открываю запрошенный файл, перед открытием делаю проверку его существования. Если файла нет показываю страничку с сообщением об ошибке.
Но ведь это не всё, нужно сообщить клиенту об ошибке?
Нашел команду
header("HTTP/1.0 404 Not Found");
Больше ничего отправлять не надо? Или так не правильно?
Дело в том, что я вставил, вызвал неправильную страницу. Ну и всё нормально. error.log апача чист. В ie ничего не изменилось. Как это можно проверить?
Отвечает: PVS
Здравствуйте, Артём Талипов!
Если апач не находит нужного файла он посылает HTTP/1.0 404 Not Found , а потом - содержимое файла указанного как error document. Вы посылаете только заголовок об ошибке, соответственно ничего у Вас не отобразится. По-поводу error.log - он и не должен ничего сигнализировать - запрос идет к шаблону, а шаблон существует.
Ответ отправил: PVS (статус: Специалист)
Ответ отправлен: 30.11.2006, 10:14
Отвечает: Марк Крейн
Здравствуйте, Артём Талипов!
Указанный Вами заголовок абсолютно верен. Единственное НО - после него не должно быть никаких данных. В противном случае в начале документа должна стоять функция ob_start(), после посылки заголовка - ob_get_contents(). Тогда будет всё нормально.
Ответ отправил: Марк Крейн (статус: Заблокирован)
Ответ отправлен: 30.11.2006, 10:16 Оценка за ответ: 5
Вопрос № 64.908
Добрый день, уважаемые эксперты.
Столкнулся со следующей проблемой:
php "не видит" некоторых своих ключевых слов. Один из примеров:
class DocsList{
public function Select() {
//....
}
}
Выдает ошибку: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in...
//без ключевого слова public код выполняется без проблем.
Примеры с php.net также не работают (все это касательно классов).
php 4.4.4 (насколько я понял, значения disable_classes и disable_functions роли не играют)
Надеюсь на Вашу помощь.
Отвечает: Марк Крейн
Здравствуйте, Maksim Sokolov!
Вообще то слово public является принадлежностью к видимости объектов класса. А такое введено только с пятой версии php. Так что нет ничего удивительного в описанной ошибке, так как для версии 4.4.4 слово public ключевым вообще не является.
Ответ отправил: Марк Крейн (статус: Заблокирован)
Ответ отправлен: 30.11.2006, 11:09
Вопрос № 64.929
Здравствуйте, уважаемые эксперты.
У меня такой вопрос: Как можно просмотреть переменные отсылаемые скрипту? Поясню: я пользуюсь уже готовым скриптом, нужно внести небольшое изменение. Так же, есть документация к программе, где написано как это менять... Сделал все как написано - не работает. Начал проверять значения каждой переменной, оказалось, что пара переменных не содержат значений вообще, хотя они должны проверять условие, т. е. стоят в операторе IF . Там ( в руководстве ) была еще пара ошибок, но я их нашел и исправил. Так вот я думаю,
что может и в именах переменных тоже допущена ошибка. Можно ли это отловить?
Заранее благодарен.
Отправлен: 30.11.2006, 13:40
Вопрос задал: Agro (статус: 1-ый класс)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: PVS
Здравствуйте, Agro!
print_r($_REQUEST) - данные из форм и адресной строки
а полную информацию выдает функция phpinfo()
Ответ отправил: PVS (статус: Специалист)
Ответ отправлен: 30.11.2006, 13:46 Оценка за ответ: 5 Комментарий оценки: Спасибо за оперативность.
Отвечает: Козлов А. С.
Здравствуйте, Agro!
Поставьте в начале скрипта или в нужном месте эту конструкцию:
print_r($_REQUEST);
Она выведет на экран ввиде ассоциированного массива все переданные скрипту переменные.
--------- Вы доставили мне истинное удовольствие парни, взвалив на меня Ваши проблемы (М. Фрай).
Ответ отправил: Козлов А. С. (статус: Студент)
Ответ отправлен: 30.11.2006, 13:46 Оценка за ответ: 5 Комментарий оценки: Спасибо за оперативность.
Отвечает: Golden Spider
Здравствуйте, Agro!
Действительно лучше просто праспечатать массив полученных данных. Но
мне кажется что вот эта функция даст вам более удобный вывод.
Например: Dump($_REQUEST) .
Я лично её использую в целях отладки...
Приложение:
--------- Сеть управляет всем, и только паук управляет сетью.
Ответ отправил: Golden Spider (статус: 6-ой класс)
Ответ отправлен: 30.11.2006, 19:58 Оценка за ответ: 5 Комментарий оценки: Спасибо, обязательно попробую.
Вопрос № 64.952
1). Подскажите, пожалуйста, скрипт, при котором пользователь может (безо всякой авторизации) менять внешний вид сайта (только для себя, конечно) -но не весь. Например, как это на сайте expresshost.net.ru (поменять можно цветовую гамму)
2). Подскажите плиз скрипт редиректа! Пример: я набираю адрес:
http://mysite.ru/index.php?redir_to=http://drugoysite.com и перенаправляюсь на http://drugoysite.com
Заранее спасибо!
Если что-то нужно уточнить - пишите в минифорум!
Отправлен: 30.11.2006, 16:19
Вопрос задала: Angel7 (статус: 6-ой класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 1)
Отвечает: PVS
Здравствуйте, Angel7!
1)В зависимости от выбора пользователя подставляете различные таблицы стилей. Выбор сохраняете в сессии или в cookie
2)header("Location: ".$_REQUEST["redir_to"])
Ответ отправил: PVS (статус: Специалист)
Ответ отправлен: 30.11.2006, 16:30