Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: PHP - админка
Форум программистов > Интернет и сети > Web-программирование > PHP программирование
Dico
Собственно сам топик только внизу пояснения к конкретной ситуации:
HTML
<!--До этого всего идёт описание формы лог,пас (обычный HTML)-->
<!--В форме вводим логин и пароль в переменные-->

</form>
<form action=admin.php?adm=news method=post>
<input type=hidden name=login value=$log>
<input type=hidden name=password value=$pas>
<center>
</form>

Допустим:
<?
include "conf.inc"; //содержит переменные $login и $password
include "dez.inc"; // тут вся форма


if ($log==$login && $pas==$password)
{
echo 'OK';

}

?>

Допустим алгоритм таков если мы ввели правильный пароль то нам выедиться сообщение ОК (впринцепи всё как и в админке если правильный пароль и логин то ОК поподаем в формы для ввода различных данных)! Но чтото нечего неработает что можете посоветывать?
Серёга
Dico
я не понимаю смысл этой формы.
конечно работать не будет, если ты не сделаешь submit её.
а так эта форма тут вооще бессмыслена.

а во вторых. вот как работает всё. я смысла твоего кода не понял немного.

index.html

HTML
<html>

<head>
<title></title>
</head>

<body>

<form action=index.php method=post>
<input type=hidden name=login1 value=root>
<input type=hidden name=password1 value=admin>
<input type=submit name=Submit value=Submit>
</form>
<center>
</body>

</html>


config.php

<?php

$login="root";
$password="admin";

?>


index.php

<?php

include "config.php";

if ($login1==$login && $password1==$password)
{

echo "OK";

}


?>
Dico
вот:
log.inc :

<?php
print"   <html>
        <head>
        <title>$deftitle</title>
        <LINK REL=\"STYLESHEET\" HREF=\"style.css\">
        </head>
        <body text=$textor bgcolor=$bgcolor_fon background=$bgcolor_right scroll=auto>
        <BR>
        <CENTER>
        <h5>авторизация</h5>
<br>
<form>
<table bgcolor=$bgcolor_left class=our>
<tr>
<td>
Login:
</td>
<td>
<input type=text name=log>
</td>
</tr>
<tr>
<td>
Password:
</td>
<td>
<input type=password name=pas>
</td>
</tr>
<tr>
<td colspan=2 align=center>
<input type=submit value='Вход'>
</td>
</tr>
</table>
</form>
<BR>
<BR>
<CENTER>
<b>©by DICO</a>
</b>
</body>
</html>
</form>
<form action=admin.php?deystvo=news method=post>
<input type=hidden name=login value=$log>
<input type=hidden name=password value=$pas>
<center>
</form> </body></html>

";
?>



config.inc

<?php
$bgcolor_left="#C9B18B";                                            //фон левой колонок
$bgcolor_right="#DCC9C9";                                         //фон главной полосы
$bgcolor_fon="#C1C7CE";                                           //фон страницы
$table_width=700;                                                       //ширина таблиц
$admin_name = "admin";                                             //login к админке
$admin_pass = "admin";                                                   //пароль к админке
$textor = "#000000";                                              //Цвет текста админки
$bgcolor_left = "#C9B18B";
$errorlist1 = "Вы неправельно ввели пароль или имя";
$deftitle = "-Админка (С) By DICO-"                               // титл админки
?>

index.php:


<?
 include "config.inc";
 include "log.inc";

if($log==$admin_name && $pas==$admin_pass)
{
 ptint(ok); /* Для проверки работает или нет потом замениться на   формы и соответствующий код!*/
}

?>

Для большего понимания!!!! Здесь полный код только непонятно почему неработает чего нехватает!???????????PHP - учу относительно недавно !
Guest
Мозгов.... нехватает
Для б-ов было написан формат формы

<form name="form1" method="post" action="script.php">
<input type="text" name="textfield">
<input type="text" name="textfield2">
</form>

mind: можно все тоже самое сказать и без указания принадлежности человека к какому бы то ни было роду животных... уважайте себя и собеседника....
SDK
<form name="form1" method="post" action="script.php">
<input type="text" name="textfield">
<input type="text" name="textfield2">
<input type="hidden" name="deystvo" value="news">
</form>

Ты в методе передачи POST фигачешь admin.php?deystvo=news
Guest
В продолжение "мозгов":
Посмотри имена полей и соответсвенно имена переменных которые отлавливает скрипт ....
"... ты всё поймешь, ты все увидишь сам...." (с) пестня
Guest
2 mind
Извини, я исправлюсь
Dico
Я что тебе полный листинг приводил ! полный листинг 19 кб.Я вырезал частями и самое основное вставил!

action=admin.php?deystvo=news - admin.php -и есть index.php!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

А с переменными всё нормально не в них дело!!!!!!!!!!!!!

дело в этом!:
if($log==$admin_name && $pas==$admin_pass)
{
ptint(ok); /* Для проверки работает или нет потом замениться на формы и соответствующий код!*/
}
Guest
Млин, ты б хоть книжку почитал для начала...

if($log==$admin_name && $pas==$admin_pass)
{
ptint(ok); /* Для проверки работает или нет потом замениться на формы и соответствующий код!*/
}

]]>http://www.php.net/manual/ru/function.print.php]]> - тут почитаешь
Guest
А прикольно smile.gif особенно последние твои строки smile.gif код то ПОЛНЫЙ!!!!!!!!!!!!!!!!!!!!!!
<?
include "config.inc";
include "log.inc";

if($log==$admin_name && $pas==$admin_pass)
{
ptint(ok); /* Для проверки работает или нет потом замениться на формы и соответствующий код!*/
}

?>

Для большего понимания!!!! Здесь полный код только непонятно почему неработает чего нехватает!???????????PHP - учу относительно недавно !
SDK
blink.gif Кто же, батенька, в хиддоны пороли с логином фигачет.


<input type=hidden name=login value=$log>
<input type=hidden name=password value=$pas>.

Хорошая такая админка - всегда знаешь пароль и логин. cool.gif

Юзать сессии нужно biggrin.gif
Radiohead
Помоему достаточно правильный скрипт авторизации:
Файл action2.php:
<?php
session_start();
$db=mysql_connect("localhost", "root");// Ïîäêëþ÷àåìñÿ ê ÑÓÁÄ
mysql_select_db("test",$dB); // Âûáèðàåì áàçó äàííûõ
$result=mysql_query("SELECT login FROM auth", $dB); // Âûáèðàåì âñå çíà÷åíèÿ ñ ïîëÿ login
while ($myrow = mysql_fetch_array($result)) // Çàöèêëèâàåì ñòðóêòóðó ñ óñëîâèåì ñîçäàíèÿ ìàññèâà
{
$oklogin=in_array("$login",$myrow); // Èùåì èñíèííûå çíà÷åíèÿ ïàðàìåòðà login â ìàññèâå
if ($oklogin==TRUE) { // Åñëè íàéäåí
       $result2=mysql_query("SELECT * FROM auth WHERE login='$login'", $dB); // Êîíåêòèìñÿ ê áàçå ñ çàïðîñîì ïàðîëåé
       $myrow2=mysql_fetch_array($result2); // Ñîçäàäèì ìàññèâ ïàðîëåé ïðè ïîäõîäÿùåì login
       if ($pass==$myrow2["pass"]) {  // Óñëîâèå ñðàâíåíèÿ ââîäèìîãî íàìè ïîðîëÿ è ïàðîëÿ èç ìàññèâà
               session_register("ok"); // Ðåãèñòðèðóåì ïåðåìêííóþ â ñåññèè
               $_SESSION['user']=$login; // Çàïèñàòü â ñåññèè ëîãèí
               header("Location: index.php?".session_name().'='.session_id()); // Îòïðàâëÿåì çàðåãèâøèãîñÿ óçâåðà íà ãëàâíóþ ñòðàíèöó
               exit; // Îáðûâàåì öèêë
               }
       else {
               echo ('PASSWORD NE TOT');// Åñëè ïàðîëü íå âåðåí
               session_unregister("ok"); // Óíè÷òîæàåì ïåðåìåííóþ â ñåññèè
               include "auth.php"; // Âûâîäèì ôîðìó àâòîðèçàöèè
             };
       return TRUE; // È îñòàíàâëèâàåì öèêë íî íå âûõîäèì èç íåãî
       };
}
echo ('takogo logina net'); // Åñëè login íå íàéäåí
session_unregister("ok"); // Óíè÷òîæàåì ïåðåìåííóþ â ñåññèè
include "auth.php"; // Âûâîäèì ôîðìó àâòîðèçàöèè
?>
Файл action.php:
<?php
$db=mysql_connect("localhost","root"); // Êîíåêòèìñÿ â ÑÓÁÄ
mysql_select_db("test", $dB); // Âûáèðàåì áàçó äàííûõ
$sql=mysql_query("INSERT INTO auth (login, pass) VALUES ('$login','$pass')"); // Îòïðàâëÿåì çàïðîñ íà âíåñåíèå äàííûõ
echo "OK"; // Âñ¸ ÎÊ
?>
Файл add.php
<form method="post" action="action.php">
Login:<input type="Text" name="login"><br>
Password:<input type="password" name="pass"><br>
<input type="Submit" name="submit" value="Register">
</form>
Файл index.php:
<?php
session_start(); // Çàïóñêàåì ñåññèþ
$ses_res=session_is_registered("ok"); // Åñëè â ìàñèâå ñåññèè åñòü ïåðåìåííàÿ ÎÊ òî ses_res ïîëó÷èò çíà÷åíèê TRUE
if ($ses_res==TRUE) { // Åñëè âñ¸ ïðîõëî íîðìàëüíî
       echo  ('REG'); // Âûïîëíÿþòñÿ ñåðâèñû äîñòóïíûå òîëüêî çàðåãèíûì óçåðàì
       ?><br><?php
       echo $_SESSION['user']; // Âûâåñòè èìÿ ïîëüçîâàòåëÿ
       }
       else
       {
               echo ('NOT REG'); // Åñëè íåò
               include("auth.php");  // Òî ñíîâà âûâîäèì ôîðìó àâòîðèçàöèè
       }
?>
Файл auth.php:
<form method="post" action="action2.php">
Login:<input type="Text" name="login"><br>
Password:<input type="password" name="pass"><br>
<input type="Submit" name="submit" value="Register">
</form>



Простите но коментарии писались в другой кодировке.
playone@linuxmail.org
Guest
правильный..... и что?
Guest
DICO вот пример

// Юзаем сессии
session_start();
session_register("level");


//если есть лог и пароль засовываем их в сессию
if ((isset($_login))
  &(isset($_pass)))
{
$level[log]=addslashes(htmlspecialchars(trim($_login)));
$level[pas]=MD5(htmlspecialchars(trim($_pass)));

//а сдесь сверяй с чем хочешь
//хочешь с базой данных
//хочешь с зашитыми значениями

if(($level[log]=логин)&($level[pas]=пароль в мд5))
$level[lev]=1; else $level[lev]=0;
//И при каждой загрузке скрипта обновляем $level[lev]
}

if ($level[lev]<1) { // а вот и форма
echo'
<center>
<form action="index.php" method="post">
input name="_login" type="text">
input name="_pass" type="password">
<input type="submit" value="Войти">
</form>
';
 else   {



Оснальной код


}



Код обычный но работать будет smile.gif)))
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2008 IPS, Inc.