Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: защита файлов по паролю(Админка)
Форумы портала PHP.SU » PHP » Программирование на PHP » защита файлов по паролю(Админка)

Страниц (1): [1]
 

1. sagym - 18 Ноября, 2009 - 12:14:04 - перейти к сообщению
Доброго времени суток ребят вообщем проблема такая:
вообщем есть папка admin
там различный файлы вот к index.php делаю проверку
if (isset($_SESSION['login']) and isset($_SESSION['password']))
{
то делай
}
else {Ошибка}
вот index.php он делает а остальные отказывается пишет ошибка!помогите плиз
session_start();
есть SID тож передаю!
вот примерный код старинцы index
<?php
session_start();
if (isset($_SESSION['login']) and isset($_SESSION['password']))
{
switch ( @$_GET['act'] )
{
case "test" :
include 'test.php' ;
break;
default:
echo '<a href="?act=test&amp;'.SID.'">test</a><br>';
}}
else
{echo 'Отдыхай';}
?>
если просто переходтьь на test.php то срабатывает защита а если через act=test?
то выдает пустоту
2. JustUserR - 18 Ноября, 2009 - 17:41:23 - перейти к сообщению
sagym пишет:
switch ( @$_GET['act'] )
Нехорошо сдесь глушить ошибки хотя бы на время тестирование - вдруг что куда не доходит а у вас это скрывается
sagym пишет:
echo '<a href="?act=test&amp;'.SID.'">test</a><br>';
Может всетаки $SID - это же переменная
3. sagym - 18 Ноября, 2009 - 18:37:56 - перейти к сообщению
если $sid то вообше не работает ничего(((
4. JustUserR - 18 Ноября, 2009 - 22:44:49 - перейти к сообщению
sagym А где вообще сама функция которая авторизиует пользователя?
И еще не совсем нравится что у вас заместо амперсанда & его html-замена &amp;
5. Viper - 19 Ноября, 2009 - 08:02:09 - перейти к сообщению
JustUserR пишет:
И еще не совсем нравится что у вас заместо амперсанда & его html-замена &amp;


так и нужно.
6. JustUserR - 19 Ноября, 2009 - 13:54:09 - перейти к сообщению
Viper пишет:
Так и нужно
В честь чего это так и нужно - это же передаваемая query-строка которая разбивается по знаку & и аотом делается urldecode (Видать вы на Perlе не программировали а то бы знали как это украми делается)
А тут заместо переменной abc передастся перменная ampabc - по крайней мере у меня так всегда было
7. Viper - 19 Ноября, 2009 - 14:25:27 - перейти к сообщению
JustUserR пишет:
В честь чего это так и нужно


в честь того что по спецификации (x)html такие знаки в урлах должны заменятся на сущности. чего urlencode и rawurlencode не делают.

http://www[dot]w3[dot]org/TR/html4/appen[dot][dot][dot]tes[dot]html#h-B[dot]2[dot]2
8. Монстр_11111 - 19 Ноября, 2009 - 14:57:40 - перейти к сообщению
Можт надо писать сид черег глобальную session ? Я не думаю что у вас register globals on
9. JustUserR - 19 Ноября, 2009 - 16:17:03 - перейти к сообщению
Viper Я понимаю что стандарт есть стандарт но все равно многое зависит от браузера
Если я к примеру вводу &amp; в адресе то ничего не работает потому что браузер пытается обратиться с query-строкой содержащей не символ амперсанда а четыре символа
А как вы сами сказали на принимающей стороне urldecode не будет перекодировать &amp; в реальный амперсанд
А впрочем это оффтопик

 

Powered by ExBB FM 1.0 RC1