Forum Webscript.Ru

Программирование => PHP => Тема начата: denup от 02 Августа 2002, 23:48:06

Название: admin.php и все дела :)
Отправлено: denup от 02 Августа 2002, 23:48:06
У меня такой вопрос!
Вот написал я скрипт, всё вроде хорошо, но как доходит до
написания admin.php всё идёт прахом! Сам алгоритм работает, но вот формы :(
Короче, вот в чём дело!
Есть скрипт!

$login="a";
$pass="a";
?>
global $yo2,$msg;
if ($yo2=="Go"){
$file = fopen("txt.txt","w");
fputs ($file,"$msg");
fclose ($file);?>
function wiev_form() {
?>

Ваше имя

Пароль



}
?>
function go2_form() {
global $login, $pass, $log, $pa;
if ($login == $log && $pass == $pa){go_form();}else{ wiev_form();}
}
?>
function go_form() {
?>

 
}
?>
if (empty($yo)) { wiev_form(); } else
{ go2_form(); }
?>


Ну дак вот!
Пароль проверяет! Далее ввожу в форму текст и нажимаю go!
Текст закладывается в файл!
Но потом скрипт обновляется и я вижу обратно форму с предложением ввести пароль!!
Но я хотел чтобы показывалась форма для ввода текста, а не пароля!!! Зачем мне его два раза вводить!?
Сколько бился над кодом, не смог наладить :(
Всё одну после нажатия go, обнавляется и выводит левую форму! :(
Подскажите пожалуйста!
А если можете то напишите кратенькую инсталляцию с формами, я посмотрю!
И ещё...
Я видел скрипты MailinksSW ( кто знает ) переписал у него парачку строк, скрипт работает! Но что плохо в его коде это - то что пароль и логин, видно в строке состояния ( где набирается WWW адресс сайтов ), а это для меня нежелательно!
Спасибо!
Название: admin.php и все дела :)
Отправлено: Tankist от 03 Августа 2002, 01:18:42
Сессии используй.
Или куки, я например куки использую вот отрывак из программы администрирования к моему новому проекту.

   include ("lib/config.php");
   include ("lib/template.php");
   $tpl=new Template("./templates");
   $tpl->load("admin");
   if (!($_COOKIE[username]==ADMIN_NAME AND $_COOKIE[userpass]==ADMIN_PASS) AND !isset($q)) {
      $content="
\\n"
      ."Авторизация:
"
      ."Имя:
\\n"
      ."Пароль:
"
      ."";
   } elseif ($q=="setcookie") {
     if ($_POST[adminname]==ADMIN_NAME AND $_POST[adminpass]==ADMIN_PASS) {
         setcookie("username",ADMIN_NAME,time()+31622400);
         setcookie("userpass",ADMIN_PASS,time()+31622400);
         $content="Вы вошли
На главную";
     } else {
         $content="Не верно введен пароль и(или) имя пользователя!
На главную";
     }
   } elseif ($_COOKIE[username]==ADMIN_NAME AND $_COOKIE[userpass]==ADMIN_PASS AND $q=="") {
      $content="Но вы уже вошли!Выйти";
   } elseif ($q=="exit") {
      setcookie("username", "", time()-3600);
      setcookie("userpass", "", time()-3600);
      $content="Вы вышли!Назад";
   }
   eval("print \\"".$tpl->get("admin")."\\";");   //Вывод шаблона
?>
Название: Нет! Может тогда JavaScript!?
Отправлено: denup от 03 Августа 2002, 01:27:12
Не... Возни много!
Может как - нибудь на java!?
Или php скрипт перестроить!?
Название: admin.php и все дела :)
Отправлено: Tankist от 03 Августа 2002, 01:37:19
Цитировать
Возни много!

Слушай...Какой java...
session_start();-начинаешь сессию
$pass="****"
session_register("pass");
тоже самое с логином и т.д. и поехал в мануале далее смотри
Название: admin.php и все дела :)
Отправлено: Макс от 03 Августа 2002, 01:56:51
Цитировать
$pass="****"
session_register("pass");
Э, а зачем пароль в сессию регистрировать? Просто в сессию записать что авторизация пройдена и все (+конечно же необходимая информация - id, login)
Название: admin.php и все дела :)
Отправлено: Tankist от 03 Августа 2002, 02:15:26
Макс
Можно и так
Название: admin.php и все дела :)
Отправлено: Covex от 03 Августа 2002, 12:46:21
denup
в том виде,  в каком ты представил, скрипт вообще не работает Parse егогг....ты потерял кое-что...
если тебе не хочется сессий(ИМХО лучший вариянт), куки .....если и это плохо,
то самый гнилой передавать гетом параметр
и обрабатывай потом if ($act=="add" and $auth=1) {
blalba;
}
if(!$auth){
форма для ввода пароля;
}
но это самый гнилой вариант...
Цитировать
то что пароль и логин, видно в строке  состояния ( где набирается WWW адресс сайтов ), а это для меня нежелательно!
ты можешь  передавать параметр через  это не будет видно в адресной строке броузера, но все равно это кал...
Короче, RTFM про сессии и куки...
Название: admin.php и все дела :)
Отправлено: Макс от 03 Августа 2002, 13:30:13
Цитировать
Короче, RTFM про сессии и куки...
зачем куки использовать если есть сессии, которые почти куки только во много раз функциональнее.

А если просто админ-интерфейс закрыть нужно,  то можно воспользоваться простым .htaccess
Название: admin.php и все дела :)
Отправлено: Covex от 03 Августа 2002, 13:42:41
[OFF]
Цитировать
куки использовать если есть сессии
одно другое не убивает.. каждой шняге своя область применения. Пусть почитает и решит, что лучше и понятнее конкретно для него...[/OFF]
Название: admin.php и все дела :)
Отправлено: Alexandr от 05 Августа 2002, 10:37:48

$login="a";
$pass="a";
?>
global $yo2,$msg;
if ($yo2=="Go"){
$file = fopen("txt.txt","w");
fputs ($file,"$msg");
fclose ($file);?>
function wiev_form() {
?>    

Ваше имя

Пароль



}
?>
function go2_form() {
global $login, $pass, $log, $pa;
if ($login == $log && $pass == $pa){go_form();}else{ wiev_form();}
}
?>
function go_form() {
?>




}
?>
if (empty($yo)) { wiev_form(); } else
{ go2_form(); }
?>

Улавливаешь мысль......