[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Скрипт авторизации
pretty_xai
Вот скрипт...Подскажите пожалуйста, почему не происходит авторизация?Очень нужна ваша помощь...Заранее хочу сказать, что безопасность не имеет значения, т.к скрипт не будет работать в интернете...Заранее большое спасибо

<?php
session_start();
include("inc/top.inc");
?>


<?php

############################################
include ('mysql.php');
############################################
if(!isset($_SESSION['user_id']))
{
if(isset($_POST['auth_submit']))
{
$login = $_POST['login'];
$password = $_POST['password'];
$login=mysql_real_escape_string($login);
$password=mysql_real_escape_string($password);
$query = "SELECT id_users, login, password FROM users WHERE login ='{$login}' AND password='{$password}' LIMIT 1";
$sql = mysql_query($query) or die(mysql_error());

if(mysql_num_rows($sql) > 0)
{
echo 'верный логин или пароль';
$auth = mysql_fetch_array($sql);
$_SESSION['user_id'] = $auth['id_users'];
}
else
{
header("Refresh: 3; URL = table.php");
echo 'неверный логин или пароль';
}

}

else
{
include_once 'index.php';
echo '
<html>
<body class="login" style="overflow: hidden;">
<div class="login-box">
<section class="portlet login-box-top">
<header>
<h2 class="ac">Вход в админ панель</h2>
</header>
<section>
<form id="form" name="avt" class="has-validation" action="index.php" method="post" style="margin-top: 30px">
<p style="margin-bottom: 30px">
<input type="text" id="login" class="full" value="" name="login" required="required" placeholder="Имя пользователя" /></p>
<p style="margin-bottom: 30px">
<input type="password" id="password" class="full" value="" name="password" required="required" placeholder="Пароль" /></p>
<footer class="ac">
<button class="button" type="submit" name="into" value="Вход">Войти</button>
</footer>
<br>
</section>
</section>
</div>
</form>
</body>
</html>'
;
}
}

else
{
include_once 'login_good.html';
}

?>




Спустя 8 минут, 20 секунд (13.06.2012 - 08:32) 12345 написал(а):
  if(isset($_POST['auth_submit']))
{

измени на
  if(isset($_POST['into']))
{

Спустя 3 минуты, 19 секунд (13.06.2012 - 08:35) pretty_xai написал(а):
Изменила...Все равно остается 'index.php'. Не могу понять в чем проблема....

Спустя 3 минуты, 3 секунды (13.06.2012 - 08:38) 12345 написал(а):
а вообще лучше место этого
                    $login = $_POST['login'];
$password = $_POST['password'];
$login=mysql_real_escape_string($login);
$password=mysql_real_escape_string($password);
$query = "SELECT id_users, login, password FROM users WHERE login ='{$login}' AND password='{$password}' LIMIT 1";

пиши так:

                    $query = "SELECT id_users, login, password
FROM users
WHERE login ='"
.mysql_real_escape_string($_POST['login'])."'
AND password='"
.mysql_real_escape_string($_POST['password'])."'
LIMIT 1
"
;

Спустя 49 секунд (13.06.2012 - 08:39) 12345 написал(а):
Цитата
Изменила...Все равно остается 'index.php'. Не могу понять в чем проблема....

В смысле??

Спустя 4 минуты, 11 секунд (13.06.2012 - 08:43) 12345 написал(а):
И как у тебя эта страница называется??? index.php???

Спустя 51 секунда (13.06.2012 - 08:44) pretty_xai написал(а):
Цитата
Изменила...Все равно остается 'index.php'. Не могу понять в чем проблема....

В смысле??


Ну при успешной авторизации должно переходить на страничку
include_once 'login_good.html';


А оно также и остается на 'index.php'....

Спустя 1 минута, 29 секунд (13.06.2012 - 08:46) pretty_xai написал(а):
Цитата
И как у тебя эта страница называется??? index.php???


Да. И форма также остается...

Спустя 11 минут, 21 секунда (13.06.2012 - 08:57) 12345 написал(а):
попробуй этот код
<?php
session_start();
include("inc/top.inc");

############################################
include ('mysql.php');
############################################
if(!isset($_SESSION['user_id']))
{
if(isset($_POST['into']))
{
$query = "SELECT id_users, login, password
FROM users
WHERE login ='"
.mysql_real_escape_string($_POST['login'])."'
AND password='"
.mysql_real_escape_string($_POST['password'])."'
LIMIT 1
"
;

$sql = mysql_query($query) or die(mysql_error());

if(mysql_num_rows($sql) > 0)
{
echo 'верный логин или пароль';
$auth = mysql_fetch_array($sql);
$_SESSION['user_id'] = $auth['id_users'];
}
else
{
header("Refresh: 3; URL = table.php");
echo 'неверный логин или пароль';
}

}

else
{
include_once 'index.php';
echo '
<html>
<body class="login" style="overflow: hidden;">
<div class="login-box">
<section class="portlet login-box-top">
<header>
<h2 class="ac">Вход в админ панель</h2>
</header>
<section>
<form id="form" name="avt" class="has-validation" action="index.php" method="post" style="margin-top: 30px">
<p style="margin-bottom: 30px">
<input type="text" id="login" class="full" value="" name="login" required="required" placeholder="Имя пользователя" /></p>
<p style="margin-bottom: 30px">
<input type="password" id="password" class="full" value="" name="password" required="required" placeholder="Пароль" /></p>
<footer class="ac">
<button class="button" type="submit" name="into" value="Вход">Войти</button>
</footer>
<br>
</section>
</section>
</div>
</form>
</body>
</html>'
;
}
}

else
{
include_once 'login_good.html';
}

?>



Что пишет??? Если что верно введены, то попробуй страницу перезагрузить

Спустя 10 минут, 20 секунд (13.06.2012 - 09:07) pretty_xai написал(а):
При этом коде теперь даже не отображается, и что все правильно введено нет...
А вот с предыдущим все работает...

Подскажите пожалуйста))

Спустя 5 минут, 21 секунда (13.06.2012 - 09:13) 12345 написал(а):
в конце место
include_once 'login_good.html';
напиши
echo "АВТОРИЗОВАНЫ";

и попробуй зайти

Спустя 11 минут, 26 секунд (13.06.2012 - 09:24) pretty_xai написал(а):
Пишет авторизованы, только как сделать так, чтобы после авторизации подключала другую страничку???

Спустя 5 минут, 34 секунды (13.06.2012 - 09:30) 12345 написал(а):
чтоб перекидывало на другую страницу при правильном вводе данных?

Спустя 2 минуты, 39 секунд (13.06.2012 - 09:32) pretty_xai написал(а):
Все спасибо, все работает!!!!Огромное спасибо!
Разобрались)))

Спустя 1 минута, 44 секунды (13.06.2012 - 09:34) 12345 написал(а):
а что не так то было?

Спустя 17 минут, 30 секунд (13.06.2012 - 09:52) linker написал(а):
Была ошибка в условии, но раз разобрался, то ладно.

Спустя 16 минут, 4 секунды (13.06.2012 - 10:08) pretty_xai написал(а):
Да все так, просто ошибка была в файле login_good.html'....
А можно еще немножечко поприставать??? Теперь, если пользователь успешно авторизован, то вывести в табличку все записи, которые были сделаны этим пользователем...

<?php 
include_once ('mysql.php');
session_start();
if (isset($_SESSION['user_id'])) {

$query = "SELECT * FROM el_zhurnal WHERE 'id_users'==($_SESSION['user_id'])";
$result = mysql_query($query);
print "<table width = '200' border = 5 class='sortable' id='t'>\n";
print "<tr>\n<th>Редакти ровать</th><th axis='num'>Дата неисправ ности</th><th>Время неисправ ности</th><th axis='str'>Ф.И.О.</th><th axis='num'>Номер ЛТОР</th><th>Наименование оборудования</th><th>Неисправность</th><th>Принятые меры</th><th>Результат</th><th axis='num'>№ служебной записки</th><th>Часть оборудования</th><th axis='num'>Дата устране ния</th><th>Время устране ния</th><th>Примечание</th>\n</tr>\n";
while ($row = mysql_fetch_array($result)) :
print "<tr>\n";
print "<td>"."<a href='form_add.php'> Редактировать</a>"."</td>\n <td>".$row["neispr_date"]."</td>\n<td>".$row["neispr_time"]."</td>\n <td>".$row["fio"]."</td>\n<td>".$row["id_ltor"]."</td>\n<td>".$row["name_perif"]."</td>\n <td>".$row["name_neispr"]."</td>\n<td>".$row["meri"]."</td>\n <td>".$row["name_rezult"]."</td>\n <td>".$row["num_slyzh"]."</td>\n<td>".$row["part"]."</td>\n<td>".$row["ustr_date"]."</td>\n <td>".$row["ustr_time"]."</td>\n<td>".$row["primecanie"]."</td>\n";
print "</tr>\n";
endwhile;
print "</table>";
mysql_close();

}
else

echo 'записей нет';
?>


Выдает ошибку....

Спустя 32 секунды (13.06.2012 - 10:08) pretty_xai написал(а):
Цитата
Была ошибка в условии, но раз разобрался, то ладно.


А в каком условии была ошибка?

Спустя 13 минут, 2 секунды (13.06.2012 - 10:21) 12345 написал(а):
Цитата
Выдает ошибку....

Какая ошибка?

Спустя 7 минут, 18 секунд (13.06.2012 - 10:29) pretty_xai написал(а):
Точнее предупреждение и пустую таблицу..

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\studio980_\login_good.php on line 10

Спустя 1 минута, 20 секунд (13.06.2012 - 10:30) 12345 написал(а):
Цитата
Цитата
Была ошибка в условии, но раз разобрался, то ладно.




А в каком условии была ошибка?

вот в этом
  if(isset($_POST['auth_submit']))
{

надо было так
 if(isset($_POST['into']))
{

Спустя 4 минуты, 41 секунда (13.06.2012 - 10:35) 12345 написал(а):
тут надо один =, == - это сравнение, которое здесь не к чему.

$query = "SELECT * FROM el_zhurnal WHERE 'id_users'==($_SESSION['user_id'])";

измени на
$query = "SELECT * FROM `el_zhurnal` WHERE `d_users`='".$_SESSION['user_id']."'";

Спустя 6 минут, 31 секунда (13.06.2012 - 10:41) pretty_xai написал(а):
Эту строку
$query = "SELECT * FROM el_zhurnal WHERE 'id_users'==($_SESSION['user_id'])";

изменила на эту
$query = "SELECT * FROM el_zhurnal WHERE `id_users`='".($_SESSION['user_id'])."'";
(исправила имя переменной + скобочку )

и все равно ошибка

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\studio980_\login_good.php on line 10

Спустя 1 минута, 43 секунды (13.06.2012 - 10:43) 12345 написал(а):
без скобок

Спустя 3 минуты, 14 секунд (13.06.2012 - 10:46) pretty_xai написал(а):
Та же ошибка... Извините, я уже наверное надоела, но очень надо разобраться...

Спустя 3 минуты, 1 секунда (13.06.2012 - 10:49) 12345 написал(а):
у тебя вообще таблица el_zhurnal есть? и в ней колонка id_users существует???

Спустя 1 минута, 54 секунды (13.06.2012 - 10:51) pretty_xai написал(а):
Да, и табличка и колонка есть....

Спустя 4 минуты, 47 секунд (13.06.2012 - 10:56) 12345 написал(а):
попрбуй место этого
			$query = "SELECT * FROM el_zhurnal WHERE 'id_users'==($_SESSION['user_id'])";
$result = mysql_query($query);

написать это

$result = mysql_query("SELECT *
FROM `el_zhurnal`
WHERE `id_users`='"
.$_SESSION[user_id]."'
"
);

или так
$result = mysql_query("SELECT *
FROM `el_zhurnal`
WHERE `id_users`='"
.$_SESSION['user_id']."'
"
);

Спустя 2 минуты, 53 секунды (13.06.2012 - 10:59) pretty_xai написал(а):
Ага, так стоп....таблица el_zhurnal есть, а вот колонки id_users - нет, зато есть колонка fio, в которой хранится ссылка на колонку fio в табличке users..
Как мне тогда правильно запрос написать???

Спустя 5 минут, 28 секунд (13.06.2012 - 11:04) 12345 написал(а):
мдааа...
в файле index.php измени
$_SESSION['user_id'] = $auth['id_users'];

на
$_SESSION['fio'] = $auth['fio'];


А в коде который выше, напиши в место
$query = "SELECT * FROM el_zhurnal WHERE 'id_users'==($_SESSION['user_id'])";
$result = mysql_query($query);

вот это


$result = mysql_query("SELECT * FROM `el_zhurnal` WHERE `fio`='".$_SESSION['fio']."'");

Спустя 15 минут, 13 секунд (13.06.2012 - 11:19) pretty_xai написал(а):
Что-то я совсем запуталась...Все изменила и в index.php в запросе добавила fio и все равно все та же ошибка..........

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\studio980_\login_good.php on line 11

Спустя 9 минут, 19 секунд (13.06.2012 - 11:29) inpost написал(а):
pretty_xai
Я не вижу измененного кода.

Спустя 3 минуты, 22 секунды (13.06.2012 - 11:32) pretty_xai написал(а):
Файл index.php
 <?php
############################################
include ('mysql.php');
############################################
if(!isset($_SESSION['fio']))
{
if(isset($_POST['into']))
{
$query = "SELECT id_users, login, password, fio
FROM users
WHERE login ='"
.mysql_real_escape_string($_POST['login'])."'
AND password='"
.mysql_real_escape_string($_POST['password'])."'
LIMIT 1
"
;

$sql = mysql_query($query) or die(mysql_error());

if(mysql_num_rows($sql) > 0)
{
echo 'верный логин или пароль';
$auth = mysql_fetch_array($sql);
$_SESSION['fio'] = $auth['fio'];
}
else
{
header("Refresh: 3; URL = table.php");
echo 'неверный логин или пароль';
}

}

else
{
include_once 'index.php';
echo '
<html>
<body class="login" style="overflow: hidden;">
<div class="login-box">
<section class="portlet login-box-top">
<header>
<h2 class="ac">Вход в электронный журнал</h2>
</header>
<section>
<form id="form" name="avt" class="has-validation" action="index.php" method="post" style="margin-top: 30px">
<p style="margin-bottom: 30px">
<input type="text" id="login" class="full" value="" name="login" required="required" placeholder="Имя пользователя" /></p>
<p style="margin-bottom: 30px">
<input type="password" id="password" class="full" value="" name="password" required="required" placeholder="Пароль" /></p>
<footer class="ac">
<button class="button" type="submit" name="into" value="Вход">Войти</button>
</footer>
<br>
</section>
</section>
</div>
</form>
</body>
</html>'
;
}
}

else
{
include_once 'login_good.php';
}

?>


и файл login_good.php

<?php 
session_start();
include_once ('mysql.php');
if (isset($_SESSION['fio'])) {

$result = mysql_query("SELECT * FROM `el_zhurnal` WHERE `fio`='".$_SESSION['fio']."'");
$result = mysql_query($query);
echo $result;
print "<table width = '200' border = 5 class='sortable' id='t'>\n";
print "<tr>\n<th>Редакти ровать</th><th axis='num'>Дата неисправ ности</th><th>Время неисправ ности</th><th axis='str'>Ф.И.О.</th><th axis='num'>Номер ЛТОР</th><th>Наименование оборудования</th><th>Неисправность</th><th>Принятые меры</th><th>Результат</th><th axis='num'>№ служебной записки</th><th>Часть оборудования</th><th axis='num'>Дата устране ния</th><th>Время устране ния</th><th>Примечание</th>\n</tr>\n";
while ($row = mysql_fetch_array($result)) :
print "<tr>\n";
print "<td>"."<a href='form_add.php'> Редактировать</a>"."</td>\n <td>".$row["neispr_date"]."</td>\n<td>".$row["neispr_time"]."</td>\n <td>".$row["fio"]."</td>\n<td>".$row["id_ltor"]."</td>\n<td>".$row["name_perif"]."</td>\n <td>".$row["name_neispr"]."</td>\n<td>".$row["meri"]."</td>\n <td>".$row["name_rezult"]."</td>\n <td>".$row["num_slyzh"]."</td>\n<td>".$row["part"]."</td>\n<td>".$row["ustr_date"]."</td>\n <td>".$row["ustr_time"]."</td>\n<td>".$row["primecanie"]."</td>\n";
print "</tr>\n";
endwhile;
print "</table>";

}
else
echo 'записей нет';

?>


Выдает ошибку
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\studio980_\login_good.php on line 11
и пустую табличку...

Спустя 30 минут, 17 секунд (13.06.2012 - 12:02) 12345 написал(а):
удали это
$result = mysql_query($query);

Спустя 16 минут, 1 секунда (13.06.2012 - 12:18) pretty_xai написал(а):
Все работает!!Спасибо большое!!!

Спустя 20 минут, 18 секунд (13.06.2012 - 12:39) 12345 написал(а):
незачто)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.