Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/65: Рейтинг темы: голосов - 65, средняя оценка - 4.89
31 / 31 / 4
Регистрация: 27.08.2011
Сообщений: 148
1

Проверка существования данных в MySql

23.11.2011, 16:12. Показов 12532. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
У меня в БД Mysql есть данные log и pass, как можно проверить на существования данного логина(log)
пароля(pass) , например есть ли в БД log - Вася и pass - 1234; если есть то кокая то переменная возвращает true ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.11.2011, 16:12
Ответы с готовыми решениями:

Проверка существования данных в MySql
Здравствуйте, прошу помочь мне разобраться с кодом! Вот у меня есть вывод данных новостей: ...

Проверка существования строки в базе данных
Добрый вечер всем! Нужно сделать проверку введенного id с id который в базе. Например, я введу...

Проверка существования пользователя в БД mysql
Имеется функция public static int ChekForus (string usr,string str) { ...

Проверка поля на существования данных
Мне нужно проверить поле обзор с фаилом. Если фаил подгружен то выполняем скрипт если нет то...

5
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
23.11.2011, 16:20 2
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$result = mysql_query(
    "SELECT * " .
    "FROM `users` " .
    "WHERE `log` = '" . mysql_real_escape_string($login) . "' AND `pass` = '" . mysql_real_escape_string($password) . "' " .
    "LIMIT 1"
) or die(mysql_error());
$user = mysql_fetch_assoc($result);
mysql_free_result($result);
 
if ($user) {
    echo 'Здравствуй! ';
    print_r($user);
}
else {
    echo 'Первый раз о Вас слышу.';
}
1
Обитатель
317 / 317 / 42
Регистрация: 24.12.2010
Сообщений: 795
23.11.2011, 16:42 3
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// данные для подключения к бд
define('host' , 'localhost');
define('user' , 'root');
define('pass' , '');
define('name' , 'имя базы данных');
 
 
// подключаемся к бд
if(mysql_connect(host,user,pass) ){
   if(mysql_select_db(name) ){}else{
      die('База даннах, не найдена'.mysql_error());
   }
}else{
  die('Ошибка, при подключении к серверу'.mysql_error());
}
 
$pole = array(
log=> 'вася',
pass=> '1234'
);
 
$row = mysql_query("select * from `название таблицы` where login='{$pole[log]}' ");
$res = mysql_fetch_array($row);
 
if(mysql_num_rows($row) > 0){
 
   //если пользователь есть, проверяем пароли
      if($pole['pass'] != $res['pass']){
         print 'пароли не совпадают!';
      }
 
}else{
   print 'такого пользователя нет!';
}
 
print 'Здравствуй вася!!!';
Единственное что хочу сказать НО!

ПАРОЛИ, в бд, лучше всего хранить в хеше - это 32битное хеширование(шифрование); парочей.
чтоб взламывать сложнее было.

А сравнивать пароли, хеш из бд,с паролем переведенным в хеш.

Добавлено через 47 секунд
Vovan-VE, Отвлекся, а пока печатал, ты уже ответил....
1
Эксперт по компьютерным сетямЭксперт NIX
13017 / 7408 / 801
Регистрация: 09.09.2009
Сообщений: 28,990
23.11.2011, 17:14 4
название темы ну очень в тему к интересующему меня вопросу.

если есть база, в которой есть некоторое количество разных таблиц. в разных таблицах есть разные колонки, естественно, с разнами данными.

каким образом можно искать данные, если не известно, ни в какой таблице, ни в какой колонке они могут находиться?
0
13208 / 6596 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
23.11.2011, 17:51 5
Цитата Сообщение от Dmitry Посмотреть сообщение
каким образом можно искать данные, если не известно, ни в какой таблице, ни в какой колонке они могут находиться?
Если в лоб, то так. Отдельно получить имена всех таблиц (SHOW TABLES). Для каждой получить имена полей (SHOW COLUMNS). Для каждой сгенерировать запрос с OR для всех полей.
1
Веб-мастер
89 / 89 / 19
Регистрация: 11.08.2011
Сообщений: 674
26.11.2011, 06:10 6
Ну вот авторизация:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php
if(isset($_POST['submit'])){
    $login = $_POST['login'];
    $pass = $_POST['pass'];
    
    if($login == ""){
        unset($login);
        $ilogin = "Введите <b>логин</b>!";
    }
    if($pass == ""){
        unset($pass);
        $ipass = "Введите <b>пароль</b>!";
    }
    
    if(isset($login) and isset($pass)){
        $login = mysql_real_escape_string($login);
        $pass = md5($pass);
        
        $row = mysql_fetch_array(mysql_query("SELECT `id`,`admin` FROM `users` WHERE `login` = '$login' AND `pass` = '$pass'"));
        if($row['id'] != "" and $row['id'] != 0){
            $_SESSION['ID'] = $row['id'];
            $_SESSION['ADMIN'] = $row['admin'];
            $status = "Вы авторизированы! Пожалуйста, подождите несколько секунд...";
            echo "<meta http-equiv='refresh' content='3;url=/index.php'>";
            $_POST['login'] = "";
        }
        else{
            $status = "Пользователь с <b>логином</b> <i>$login</i> не зарегистрирован(а).";
        }
    }
}
 
echo "<h4 align='center'>$status</h4>
<form name='form1' method='post' action='auth.php'>
<table width='400' border='0' align='center' cellpadding='0' cellspacing='0'>
<tr>
<td width='50%'><p>Логин:</p></td>
<td width='50%'><p><label><input name='login' id='text' type='text' value='$_POST[login]' size='25' maxlength='20'></label><br>$ilogin</p></td>
</tr>
<tr>
<td width='50%'><p>Пароль:</p></td>
<td width='50%'><p><label><input name='pass' id='text' type='password' size='25' maxlength='255'></label><br>$ipass</p></td>
</tr>
<tr>
<td colspan='2'><p align='center'><input name='submit' type='submit' value='Войти'><input name='reset' type='reset'></p></td>
</tr>
</table>
</form>";
?>
Гамнокод?
0
26.11.2011, 06:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.11.2011, 06:10
Помогаю со студенческими работами здесь

Проверка существования передаваемых данных
Здравствуйте. Пните в нужную сторону, где я ошибаюсь бд -- Структура таблицы `c_user` -- ...

Проверка на существования ID
Всем привет !!! :) У меня такой вопрос можно ли вообще проверить в PHP существует ли...

Проверка существования id
Короче мне нужно чтоб выводило если нету этого ид то чтоб оно писало такого ид нету

Проверка введённых данных пользователя и вывод из MySQL
В таблице MySQL имеются столбцы id, name, score и pass. Пытаюсь сделать так, чтобы при вводе name,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru