Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
|
помогите сделать обработчик событий для данного кода на php 19.06.02 14:07 Число просмотров: 942
Автор: paganoid Статус: Member
|
<?
function foo ($in) {
if ($in != "") {$out=$in;}
else {$out="news.htm";} return $out;}
$tmp = (foo($QUERY_STRING);
if (file_exists($tmp)) {
inlude ($tmp);
}
else
die("Файл не существует");
?>
---
Хм... Вообще то приведенный пример иллюстрирует, как НЕ надо программировать, чтоб не хакали :) По хорошему надо сделать
function foo ($in) {
if ($in == 1)
return "1.html";
else
return "2.html";
}
---
т.е., как минимум, набор файлов должен быть предопределенным. $QUERY_STRING не парся, впендюривать - вообще порнография. Кроме того, ты вставляешь обычный html и делать на него INCLUDE - тотальное зло. Заместо этого надо использовать fpassthru , просто читая текстовый файл. В приведенном мной примере я ентого не делал (не знаю специфики твоей задачи)
|
<programming>
|
помогите сделать обработчик событий для данного кода на php 19.06.02 12:10
Автор: super_lamer Статус: Незарегистрированный пользователь
|
Код:
<?
function foo ($in) {
if ($in != "") {$out=$in;}
else {$out="news.htm";} return $out;}
include (foo($QUERY_STRING));
?>
как сделать чтобы если документ на который ссылается $QUERY_STRING не существует выдавалось сообщение об ошибке?
|
|
помогите сделать обработчик событий для данного кода на php 19.06.02 14:07
Автор: paganoid Статус: Member
|
<?
function foo ($in) {
if ($in != "") {$out=$in;}
else {$out="news.htm";} return $out;}
$tmp = (foo($QUERY_STRING);
if (file_exists($tmp)) {
inlude ($tmp);
}
else
die("Файл не существует");
?>
---
Хм... Вообще то приведенный пример иллюстрирует, как НЕ надо программировать, чтоб не хакали :) По хорошему надо сделать
function foo ($in) {
if ($in == 1)
return "1.html";
else
return "2.html";
}
---
т.е., как минимум, набор файлов должен быть предопределенным. $QUERY_STRING не парся, впендюривать - вообще порнография. Кроме того, ты вставляешь обычный html и делать на него INCLUDE - тотальное зло. Заместо этого надо использовать fpassthru , просто читая текстовый файл. В приведенном мной примере я ентого не делал (не знаю специфики твоей задачи)
|
| |
помогите сделать обработчик событий для данного кода на php 19.06.02 14:33
Автор: super_lamer Статус: Незарегистрированный пользователь
|
> > <?
> function foo ($in) {
> if ($in != "") {$out=$in;}
> else {$out="news.htm";} return $out;}
>
> $tmp = (foo($QUERY_STRING);
> if (file_exists($tmp)) {
> inlude ($tmp);
> }
> else
> die("Файл не существует");
> ?>
> ---
> > Хм... Вообще то приведенный пример иллюстрирует, как НЕ > надо программировать, чтоб не хакали :) По хорошему надо > сделать > > function foo ($in) {
> if ($in == 1)
> return "1.html";
> else
> return "2.html";
> }
> ---
> т.е., как минимум, набор файлов должен быть > предопределенным. $QUERY_STRING не парся, впендюривать - > вообще порнография. Кроме того, ты вставляешь обычный html > и делать на него INCLUDE - тотальное зло. Заместо этого > надо использовать fpassthru , просто читая текстовый файл. > В приведенном мной примере я ентого не делал (не знаю > специфики твоей задачи)
Мне надо просто в зависимости от нажатия различных ссылок вставлять в 1 документ информацию из других файлов, если же они не существуют выдавать эррор404
Сори за наглость но не мог бы ты сделать этот скриптик бехопасным как ты говорил без инклудов и с использованием fpassthru
|
|
|