Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.86/22: Рейтинг темы: голосов - 22, средняя оценка - 4.86
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391

В базе есть логин и пароль, но скрипт пишет, что такого пользователя нет

21.10.2012, 00:32. Показов 4700. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Пишу скрипт авторизации (новичок), и столкнулся с проблемой. Не могу понять, где ошибка в sql запросе. В базе есть логин и пароль, но при вводе скрипт не сравнивает данные с базой, а просто пишет, что такого пользователя не существует.
форма(index.php):
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
error_reporting(E_ALL);
echo '<h1><b><i>Авторизация</h1></b></i><br>
    <form action="/auth.php" method="post">
    Логин:<br>
    <input type=text name="login"><br>
    Пароль: <br>
    <input type=password name="password"><br>
    <input type=submit name="sub"><br>
    </form>';
echo '<br><br>
        <a href="/reg.php">Регистрация</a><br>
        <a href="/zab.php">Забыли пароль?</a>';
?>
Авторизация (Auth.php):
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
error_reporting(E_ALL);
if(isset($_POST['sub'])) {
    if(isset($_POST['login']) && isset($_POST['password'])) {
        $login=$_POST['login'];
        $password=$_POST['password'];
} else {
echo 'Вы не заполнили поля';
 
}
}
$login=trim($login);
$login=htmlspecialchars($login);
$login=stripslashes($login);
$password=trim($password);
$password=htmlspecialchars($password);
$password=stripslashes($password);
$dbhost='localhost';
$dbname='';
$dbuser='';
$dbpass='';
$db=mysql_connect($dbhost, $dbname, $dbpass) or die ('Ошибка соединения с БД. Пожалуйста попробуйте позже');
$select=mysql_select_db($dbname ,$db) or die ('Не могу подключится к БД. Пожалуйста попробуйте позже');
$q="SELECT `Login`, `Password` FROM `Auth` WHERE `Login`='{.$login.}', `Password`='{.$password.}'";
$query=mysql_query($q);
if(!$query){
echo 'Такого пользователя не существует, либо введены неверные данные<br>
    <a href="/index.php">Назад</a>';}
 
mysql_close($db);
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.10.2012, 00:32
Ответы с готовыми решениями:

Пишет на сайте что неправильный логин и пароль
Доброго времени суток. Извините что задаю может туповатый вопрос. Скачал движок для сайта. Ну вот беда не могу зайти в админку... Все...

Python3. Пишет, что нет такого модуля
У меня macOS. В начало своего кода я добавил from colorama import init from colorama import Fore, Back, Style и когда запускаешь код...

Using есть, а оно пишет что его нет
После отката на предыдущий коммит, vs17 почем-то перестала видеть ссылку на сборку, хотя сборка есть. Очистка решения и пересборка не...

20
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
21.10.2012, 01:41
Ну еще бы, ведь он ищет не просто по значению переменной, а по значению, заключенному в фигурные скобки..
Выбирайте на Ваш вкус))
Кликните здесь для просмотра всего текста
PHP
1
$q="SELECT `Login`, `Password` FROM `Auth` WHERE `Login`='{$login}', `Password`='{$password}'";
PHP
1
$q="SELECT `Login`, `Password` FROM `Auth` WHERE `Login`='${login}', `Password`='${password}'";
PHP
1
$q="SELECT `Login`, `Password` FROM `Auth` WHERE `Login`='$login', `Password`='$password'";
PHP
1
$q="SELECT `Login`, `Password` FROM `Auth` WHERE `Login`='".$login."', `Password`='".$password."'";
PHP
1
$q='SELECT `Login`, `Password` FROM `Auth` WHERE `Login`="'.$login.'", `Password`="'.$password.'"';


P.S. я бы посоветовал последний..

Добавлено через 10 минут
Кликните здесь для просмотра всего текста
Цитата Сообщение от M1lleniuM Посмотреть сообщение
PHP
1
if(isset($_POST['login']) && isset($_POST['password'])) {
isset поддерживает передачу нескольких аргументов
PHP
1
if(isset($_POST['login'], $_POST['password'])) {
Если просто набрать адрес скрипта - то полезут нотайсы.. Смысл тогда с проверок isset-ом вообще?
Цитата Сообщение от M1lleniuM Посмотреть сообщение
PHP
1
2
3
$login=trim($login);
$login=htmlspecialchars($login);
$login=stripslashes($login);
имхо, намного лучше и проще прописать тогда уж сразу все.. К тому же htmlspecialchars используется для вывода из БД в основном, от инъекций она все равно не поможет. Для защиты от инъекций надо использовать (раз вы mysql используете) mysql_real_escape_string
PHP
1
$login = mysql_real_escape_string(stripslashes(trim($_POST['login'])));
Где проверка хотя бы на пустоту? Или незаполненные поля тоже считаются как неверно введенными..?))
Зачем что-то извлекать, если необходимо лишь подсчитать? (SELECT COUNT....)
0
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
21.10.2012, 12:27  [ТС]
Спасибо большое за четкое объяснение ошибок! Буду исправлять!
PHP
1
2
3
$login=trim($login);
$login=htmlspecialchars($login);
$login=stripslashes($login);
имхо, намного лучше и проще прописать тогда уж сразу все.. К тому же htmlspecialchars используется для вывода из БД в основном, от инъекций она все равно не поможет. Для защиты от инъекций надо использовать (раз вы mysql используете) mysql_real_escape_string
PHP
1
$login = mysql_real_escape_string(stripslashes(trim($_POST['login'])));
Где проверка хотя бы на пустоту? Или незаполненные поля тоже считаются как неверно введенными..?))
Зачем что-то извлекать, если необходимо лишь подсчитать? (SELECT COUNT....)
Я немного вас не понимаю. Несколько аспектов. Почему требуется лишь подсчитать? А насчет проверок на пустоту - организуем. Привлечем функцию empty. Насколько я помню, она проверяет переменную на пустоту. Насчет функции mysql_real_escape_string - приму к сведению. А так, этот скрипт я писал "для большего понимания". С языком начал работать недавно, а на практике легче освоить
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
21.10.2012, 13:08
Цитата Сообщение от M1lleniuM Посмотреть сообщение
Почему требуется лишь подсчитать?
Ну вот смотрите, вы сделали запрос к БД, извлекли оттуда логин и пароль. Внимание, вопрос - зачем, если они уже есть у нас? Надо надо просто узнать, есть такая запись в БД уже или нет - следовательно нужно просто подсчитать число таких записей. 0 - значит нет записей, 1 - есть такой (т.е. если использовать empty() - то true или false)

Добавлено через 2 минуты
К стилю Вашего кода это не относится - но я там делал запрос для подсчета записей, посмотрите код Попова
0
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
21.10.2012, 18:49  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
Ну вот смотрите, вы сделали запрос к БД, извлекли оттуда логин и пароль. Внимание, вопрос - зачем, если они уже есть у нас? Надо надо просто узнать, есть такая запись в БД уже или нет - следовательно нужно просто подсчитать число таких записей. 0 - значит нет записей, 1 - есть такой (т.е. если использовать empty() - то true или false)

Добавлено через 2 минуты
К стилю Вашего кода это не относится - но я там делал запрос для подсчета записей, посмотрите код Попова
Спасибо за отличную ссылку! Слышал, что Попова недолюбливают программисты. А тут посмотрел на его код и увидел схожесть, очень большую, со своим. А такое не очень хорошо! Поэтому нужно исправляться! Огромнейшее спасибо
0
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
28.10.2012, 00:13  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
Ну вот смотрите, вы сделали запрос к БД, извлекли оттуда логин и пароль. Внимание, вопрос - зачем, если они уже есть у нас? Надо надо просто узнать, есть такая запись в БД уже или нет - следовательно нужно просто подсчитать число таких записей. 0 - значит нет записей, 1 - есть такой (т.е. если использовать empty() - то true или false)

Добавлено через 2 минуты
К стилю Вашего кода это не относится - но я там делал запрос для подсчета записей, посмотрите код Попова
Ув. KoroJI! Если вам не трудно, укажите на ошибку!) Просмотрел исправленный скрипт "Попова" и почерпал от туда очень много полезной информации!. Написал скрипт, очень даже похожий(почти идентичный можно сказать, писал в ручную, чтобы понять, как это все работает), но исключая из него некоторые элементы, которые мне еще не известны. Запись в базу происходит, но столкнулся с такой проблемой. Проверка наличия такого же значения в базе данных.
Вот элемент кода из исправленного вами скрипта "Попова":
PHP
1
2
3
4
5
6
7
$result = mysql_query('SELECT COUNT(*) FROM `users` WHERE `login`="'.$login.'"');
            
            if(TRUE === $result)
                $data = mysql_fetch_array($result,MYSQL_NUM);
 
            if(!empty($data[0]))
                echo 'Пользователь с таким логином уже существует!';
а также вот эта строка(которую я не знал, и по этой причине решил экспериментально удалить)
PHP
1
2
3
4
5
if (-1 != mysql_affected_rows())
                    echo 'Вы успешно зарегистрированы! Теперь вы можете зайти на сайт.<br />
                    <a href="./">Главная страница</a>';
                else 
                    echo 'Произошла ошибка при регистрации. Пожалуйста, попробуйте позднее.';
В итоге, я получил такой результат, что даже если данные есть в базе, добавляются еще раз. Значит первый запрос не работает у меня.. Это из-за данной строки? Я чуть допилил скрипт(проверка емайла на существование в базе).
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
<?php
error_reporting(E_ALL);
if(isset($_POST['sub'])){
    if(isset($_POST['login'], $_POST['pass'], $_POST['email'])){
        $login=stripslashes(trim($_POST['login']));
        $pass=stripslashes(trim($_POST['pass']));
        $email=stripslashes(trim($_POST['email']));
if(empty($login) || empty($pass) || empty($email) || empty($pass2))
echo 'Вы заполнили не все поля!!';
else {
$dbhost='localhost';
$dbname='';
$dbuser='';
$dbpass='';
$db=mysql_connect($dbhost, $dbname, $dbpass) or die ('Ошибка соединения с БД. Пожалуйста попробуйте позже');
$select=mysql_select_db($dbname ,$db) or die ('Не могу подключится к БД. Пожалуйста попробуйте позже');
$login=mysql_real_escape_string($login);
$pass=mysql_real_escape_string($pass);
$q="SELECT COUNT(*) FROM `Auth` WHERE `Login`='$login' or `E-mail`='$email'";
$query=mysql_query($q);
if($query){
$row=mysql_fetch_row($query);
if(!empty($row[0]) || !empty($row[1]))
echo 'Пользователь с таким именем или E-mail уже существует<br><br> 
<a href="/index.php">Назад</a>';}
else {
$q2="INSERT INTO `Auth` (`Login`, `Password`, `E-mail`) VALUES('$login', '$pass', '$email')";
$query2=mysql_query($q2);
if($query2)
echo 'Вы успешно зарегестрировались!';
else{
echo 'Произошла ошибка. Пожалуйста, попробуйте позднее';}
mysql_close($db);
}
}
}
        } else
            echo 'Вы не заполнили поля';
?>
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
28.10.2012, 00:28
Цитата Сообщение от M1lleniuM Посмотреть сообщение
PHP
1
2
3
$result = mysql_query('SELECT COUNT(*) FROM `users` WHERE `login`="'.$login.'"');
if(TRUE === $result)
            $data = mysql_fetch_array($result,MYSQL_NUM);
вот здесь ошибка mysql_query() возвращает булев (false) в случае ошибки, а в других случаях - в зависимости от самого запроса. При запросах SELECT, SHOW, EXPLAIN (может еще какие-то, не помню) возвращается в случае успеха не булев тип, а указатель на результат запроса, т.е. так называемый "ресурс". А это не логический тип, здесь не нужно строгое сравнение (там в коде я ошибся, прошу прощения ). Уже исправил, спасибо..

Добавлено через 1 минуту
из-за того, что это условие никогда не выполнялось, соответственно всегда было пустым $row[0] и соответсвенно он добавлял новые записи
0
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
30.10.2012, 21:31  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
вот здесь ошибка mysql_query() возвращает булев (false) в случае ошибки, а в других случаях - в зависимости от самого запроса. При запросах SELECT, SHOW, EXPLAIN (может еще какие-то, не помню) возвращается в случае успеха не булев тип, а указатель на результат запроса, т.е. так называемый "ресурс". А это не логический тип, здесь не нужно строгое сравнение (там в коде я ошибся, прошу прощения ). Уже исправил, спасибо..

Добавлено через 1 минуту
из-за того, что это условие никогда не выполнялось, соответственно всегда было пустым $row[0] и соответсвенно он добавлял новые записи
вот честно не понял о чем это) Сколько не сравнивал изначальный код с кодом, который сейчас, не нашел различий. Может не внимательно смотрел. Но у меня такой вопрос.
PHP
1
$result = mysql_query('SELECT COUNT(*) FROM `users` WHERE `login`="'.$login.'"');
Вы сказали что он "считает" результаты в которых есть значение логина. Я посмотрел функция count возвращает значения либо 0 либо 1. Далее вы проверяете запрос на истинность.
PHP
1
if(TRUE === $result)
и после этого возвращаете значения полученные из запроса в виде нумерованного массива. А после вы проверяете элементы этого массива на пустоту.
PHP
1
if(!empty($data[0]))
Но как можно проверить массив на пустоту если там и так всегда будет значение либо 0 либо 1? Значит извлекать данные все таки придется наверно...
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
30.10.2012, 21:37
Цитата Сообщение от M1lleniuM Посмотреть сообщение
Далее вы проверяете запрос на истинность.
вот как раз здесь и ошибка - надо два знака равно, а не три
0
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
30.10.2012, 21:50  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
вот как раз здесь и ошибка - надо два знака равно, а не три
Так мои доводы насчет count верны? Или я чего-то не понимаю? Я дико извиняюсь за потраченное на меня время.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
30.10.2012, 21:53
нет, неверны для empty пусто - это ноль, единица это не пусто для нее если он не найдет ничего, то в $data[0] будет 0, если найдет - будет 1. Т.е. если там будет единица - то empty пропустит как не пустое значение - следовательно напишет что такой юзер уже есть
0
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
30.10.2012, 22:04  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
нет, неверны для empty пусто - это ноль, единица это не пусто для нее если он не найдет ничего, то в $data[0] будет 0, если найдет - будет 1. Т.е. если там будет единица - то empty пропустит как не пустое значение - следовательно напишет что такой юзер уже есть
PHP
1
2
3
4
5
6
7
$q="SELECT COUNT(*) FROM `Auth` WHERE `Login`='$login', `E-mail`='$email'";
$query=mysql_query($q);
if(TRUE == $query){
$row=mysql_fetch_array($query, MYSQL_NUM);
if(!empty($row[0]) || !empty($row[1]))
echo 'Пользователь с таким именем или E-mail уже существует<br><br> 
<a href="/index.php">Назад</a>';}
Вот он этот несчастный кусок кода. Проблема в том, что даже после установления строгого неравенства, скрипт с тем же значением, которое есть в базе выполняется успешно. В чем прикол,я не понимаю. Видимо я не в теме. Но после создания массива он остается пуст.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
30.10.2012, 22:06
а вот так?
Цитата Сообщение от M1lleniuM Посмотреть сообщение
if(!empty($row[0]) || !empty($row[1]))
0
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
30.10.2012, 22:08  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
а вот так?
но у меня же подсчет идет по двум критериям.. и если оба возвращают 1, то проверки на пустоту должно быть 2..
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
30.10.2012, 22:11
Вернется только одно число. Ошибка была в неверном запросе.
Если нужно искать по обоим значениям, чтобы точно совпадало и логин и пароль - то замените OR на AND.
Сейчас если найдет с таким логином или мылом - то не пропустит.
PHP
1
2
3
4
5
6
7
$q="SELECT COUNT(*) FROM `Auth` WHERE `Login`='$login' OR `E-mail`='$email'";
$query=mysql_query($q);
if(TRUE == $query){
$row=mysql_fetch_array($query, MYSQL_NUM);
if(!empty($row[0]))
echo 'Пользователь с таким именем или E-mail уже существует<br><br> 
<a href="/index.php">Назад</a>';}
0
25 / 25 / 4
Регистрация: 21.10.2012
Сообщений: 391
30.10.2012, 23:24  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
Вернется только одно число. Ошибка была в неверном запросе.
Если нужно искать по обоим значениям, чтобы точно совпадало и логин и пароль - то замените OR на AND.
Сейчас если найдет с таким логином или мылом - то не пропустит.
PHP
1
2
3
4
5
6
7
$q="SELECT COUNT(*) FROM `Auth` WHERE `Login`='$login' OR `E-mail`='$email'";
$query=mysql_query($q);
if(TRUE == $query){
$row=mysql_fetch_array($query, MYSQL_NUM);
if(!empty($row[0]))
echo 'Пользователь с таким именем или E-mail уже существует<br><br> 
<a href="/index.php">Назад</a>';}
Спасибо огромнейшее за столь понятное объяснение! Будем учится! Ушел тестить.)

Добавлено через 1 час 2 минуты
Цитата Сообщение от KOPOJI Посмотреть сообщение
Вернется только одно число. Ошибка была в неверном запросе.
Если нужно искать по обоим значениям, чтобы точно совпадало и логин и пароль - то замените OR на AND.
Сейчас если найдет с таким логином или мылом - то не пропустит.
PHP
1
2
3
4
5
6
7
$q="SELECT COUNT(*) FROM `Auth` WHERE `Login`='$login' OR `E-mail`='$email'";
$query=mysql_query($q);
if(TRUE == $query){
$row=mysql_fetch_array($query, MYSQL_NUM);
if(!empty($row[0]))
echo 'Пользователь с таким именем или E-mail уже существует<br><br> 
<a href="/index.php">Назад</a>';}
Похоже сегодня не мой день. После исправления кода, запрос, который исполнялся ранее, теперь перестал функционировать. (Запись в базу)
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$query=mysql_query($q);
if(TRUE == $query){
$row=mysql_fetch_array($query, MYSQL_NUM);
if(!empty($row[0]))
echo 'Пользователь с таким именем или E-mail уже существует<br><br> 
<a href="/index.php">Назад</a>';
}
else {
$q2="INSERT INTO `Auth` (`Login`, `Password`, `E-mail`) VALUES('$login', '$pass', '$email')";
$query2=mysql_query($q2);
if($query2)
echo 'Вы успешно зарегестрировались!';
else{
echo 'Произошла ошибка. Пожалуйста, попробуйте позднее';
mysql_close($db);
}
}
}
}
        } else
            echo 'Вы не заполнили поля';
0
 Аватар для alpex
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
04.11.2012, 06:45
Цитата Сообщение от M1lleniuM Посмотреть сообщение
PHP
1
2
$query=mysql_query($q); 
if(TRUE == $query){
а зачем делать проверку?
Ведь здесь всегда будет истина, если запрос правильно составлен, даже если в результате выборки будет 0, в переменной query всегда будет resource mysql который всегда равен true

Добавлено через 3 минуты
здесь нужно сделать так
PHP
1
2
3
4
5
6
$query=mysql_query($q); 
$row = mysql_fetch_row($query);
if (!empty($row[0]))
echo 'Пользователь с таким именем или E-mail уже существует<br><br> 
<a href="/index.php">Назад</a>';
else ...
0
04.11.2012, 14:11

Не по теме:

Цитата Сообщение от alpex Посмотреть сообщение
здесь нужно сделать так
http://www.php.net/manual/ru/f... d-rows.php

0
 Аватар для alpex
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
04.11.2012, 18:02
Цитата Сообщение от KOPOJI Посмотреть сообщение
ну там запрос типа select по этому affected rows не подойдет
ну я собственно говорил про проверку
PHP
1
if(TRUE == $query)
, какой от этого смысл если это условие всегда будет выполнятся,независимо от результата выборки
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
05.11.2012, 01:12
Цитата Сообщение от alpex Посмотреть сообщение
какой от этого смысл если это условие всегда будет выполнятся
с чего Вы это взяли? А если произойдет какая то ошибка в запросе? Или, например, окажутся не проэкранированные данные и в запросе будете что нить типа
SQL
1
WHERE `login`=''login
что произойдет? Так как не проверяется что вернул запрос - вылетит ошибка пользователю
Warning: mysql_fetch_array expects parameter 1 to be resource, boolean given in...
А если проверка будет - то ошибки не возникнет. Другой вопрос, что именно здесь, в этом коде, эта проверка бессмысленная..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.11.2012, 01:12
Помогаю со студенческими работами здесь

При добавлении в таблицу записи, пишет ошибку, что нет такой таблицы в базе
добрый вечер пытаюсь добавить в таблицу запись, но пишет ошибку, что нет такой таблицы в базе (&quot;faculty&quot;,...

Изменил настройки локальной сети и после перезагрузки пишет, что неверное имя или пароль пользователя при попытке войти в систему. Срочно!!!!
Изменил настройки локальной сети и после перезагрузки пишет что неверное имя или пароль пользователя при попытке войти в систему. Помогите...

Коннект к базе. Логин и пароль - переменные.
Хочу соединиться с базой через переменные. Логин и пасс хранятся в переменных типа CString. CString user = &quot;user&quot;; CString...

Где хранить логин и пароль пользователя
Где тру программисты хранят логины и пароли авторизованных пользователей - в куках или сессиях?

Логин и пароль пользователя в десктоп приложении
Для начала работы с программой требуется подключение к бд для загрузки профиля. Как правильно хранить логин и пароль пользователей вне...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru