Помогите сделать форму логина

Dark-observer

Новичок
Помогите сделать форму логина

Хочу сделать форму авторизации, но не получается , скрипт даже не выполняет свои функции, помогите найти ошибку!
Вот мой скрипт:

Код:
[PHP]
<?
if (isset($submit)==0){
?>
<form name="loginform" method="post" action="account.php">
<TD WIDTH=262 HEIGHT=271 background="images/m2.jpg"><div class="style4 style9" style="padding-left:15px;padding-top:17px ">Вход</div>

<div class="style10" style="padding-left:74px;padding-top:10px ">login:<strong style="padding-left:10px "><input name="login" type="text" style="width:100px;height:18px " size="20"></strong>
</div> <div class="style10" style="padding-left:50px;padding-top:2px ">password:<strong style="padding-left:10px "><input name="password" type="password" style="width:100px;height:18px "></strong><a class="style2" style="color:#0A2C50;text-decoration:none "><input type="submit" name="submit" value="GO"></a>

<?
}else{
include('config.php');
$dbcnx = @mysql_connect("$hostname", "$dbusername", "$dbpassword") OR DIE("Не могу создать соединение ");
exit();
mysql_select_db("$dbname") or die("Не могу выбрать базу данных "); 
exit(); 

$query = "SELECT login, password FROM user WHERE name='".$_POST['login']."'"; 
$nme = mysql_query($query); 
if(!$nme); 
{ 
echo mysql_error(); 
echo "Ошибка выполнения запроса"; 
exit(); 
} 

if(mysql_num_rows($nme) > 0) 
{ 

$password = mysql_result($nme, 0); 
if ($_POST['password'] == $password) 
{ 
if(session_start()) 
{ 
$_SESSION['login'] = $_POST['login']; 
$_SESSION['password'] = $_POST['password']; 
echo "<HTML><HEAD> 
<META HTTP-EQUIV='Refresh' CONTENT='0'; URL='account.php'> 
</HEAD><body>"; 
} 
} 
else 
{ 
echo "Ошибка идентификации: неправильный пароль"; 
exit(); 
} 
} 
// Если в результате запроса не получено ни одной 
// строки - посетитель с таким именем не зарегистрирован 
else 
{ 
echo "Ошибка идентификации: посетитель не зарегистрирован"; 
exit(); 
}
} 
?>
[/PHP]
 

crocodile2u

http://vbolshov.org.ru
Отредактируй сообщение. Код PHP должен быть заключен в BB-теги
PHP:
 

kolobok

fPanel Billing Coder
сейчас придет Фанат и скажет куда тебе идти. Правила форума почитай, заодно и FAQ
 

VBart

Новичок
Для начала в первой же строчке не понятно откуда возьметься переменная $submit в случае register globals off (а так и должно быть).

А в остальном коде вряд ли бесплатно кто-то за вас будет копаться.
 

Dreammaker

***=Ф=***
mysql_select_db("$dbname") or die("Не могу выбрать базу данных ");

exit();

и выше аналогично..
 

Dark-observer

Новичок
$submit это переменная кнопки, при нажатии которой, он выведет выше перечисленный код!
 

VBart

Новичок
Dark-observer
1) Кто он и куда выведет?
2) $_POST['submit'] вам ни о чем не говорит?
 

Dreammaker

***=Ф=***
Dark-observer, обратил внимание на мой пост?
Кроме того в первой строчке можнго сделать

if (isset($_POST['submit']))
 

Dark-observer

Новичок
if (isset($_POST['submit']))
да это тоже удобный вариант,он должен аторизоваться и передать данные в account.php,
account.php это аккуант пользователя куда он будет попадать после авторизации, я использую action="account.php", что бы он передал данные с index.php в account.php, но незнаю правильно ли это. По идеи он должен авторизоваться и попасть в аккуант пользователя, но этого не происходит. Я пробовал этот метод if (isset($_POST['submit'])==0){
Но все равно не происходит авторизация лиш только при нажатии переходит а аккуант, без ввода логина и пароля.
 

VBart

Новичок
Dark-observer
А вышеприведенный код в каком файле находится?
 

Dreammaker

***=Ф=***
if (isset($_POST['submit'])==0){

не нужно ставить нулей...

просто if (isset($_POST['submit']))

Ладно, это так..

Вижу не совсем понимаешь... я тем более...
Перефразирую зачем ты ставишь exit()
после выбора коннекта к БД и выбора базы?

update; Логично, что не будет переходить. Ты же человека соаху на другой файл перенаправляешь.
Сделай action как $_SERVER['PHP_SELF'] , а затем если он прошёл авторизацию, то с помощью header("Location: URL") перенаправляй на скрипт с аккаунтом.
 

VBart

Новичок
Автор оригинала: Dark-observer
index.php
Т.е. вы логин и пароль отправляете в account.php, а код проверки у вас в index.php... забавно. В таком случае срочно читать что такое php, самые основы.
 

garlian

Новичок
Неверно написано перенаправлени, сделай так:
<META HTTP-EQUIV='Refresh' CONTENT='0; URL=account.php'>
 

Dreammaker

***=Ф=***
garlian, это ты к чему? :)
У меня неправильно?..
Я думаю человек поймёт, что URL нужно заменить на нужный для перенаправления скрипт. А твой вариант не совсем идеален в данной ситуации, точнее не нужен..
 

Magiys

Новичок
Могу дать готовый скрипт бесплатно с мощной проверкой по сессиям.
 
Сверху