Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
1 / 1 / 1
Регистрация: 26.02.2011
Сообщений: 28

Что не так в этом коде!

26.02.2011, 23:11. Показов 1371. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Что не так в этом куске кода? Укажите на все ошибки и слабые места.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?
$result = mysql_query("
      SELECT * FROM users
       WHERE login = '".$_POST['login']."'
             AND password = '".$_POST['password']."'
");
if (mysql_num_rows($result)) {
    echo "Вы авторизованы";
} else {
    echo "Неправильный логин/пароль";
}
?>
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.02.2011, 23:11
Ответы с готовыми решениями:

Что в этом коде не так?
Все доброго времени суток. Подскажите пожалуйста, где ошибки и что не так с кодом, и как это исправить. Есть код сдвига по svg изображение....

Что не так в этом коде?
Помогите решить проблему: #include &lt;stdio.h&gt; main() { int age printf(&quot;Возраст&quot;); scanf(&quot; %d&quot;, &amp;age); return...

что не так в этом коде
public abstract class Digest { private Map&lt;byte, byte&gt; cache = new HashMap&lt;byte, byte&gt;(); public byte digest(byte input) { byte...

10
9 / 9 / 0
Регистрация: 31.10.2010
Сообщений: 100
27.02.2011, 00:27
Вот как попробуй первую часть переписать:

PHP
1
2
3
4
5
$result = mysql_query("
SELECT * FROM `users`
WHERE `login`='.$_POST['login'].'
AND `password`='.$_POST['password'].'
");

З.Ы. символ ` - это не одинарная ковычка, а кнопка под эскейпом, где с шифтом знак ~
Короче консоль в КСе вызываешь где
0
1 / 1 / 1
Регистрация: 26.02.2011
Сообщений: 28
27.02.2011, 01:12  [ТС]
спасибо большое, а еще есть какие-то ошыбки?
0
45 / 45 / 12
Регистрация: 04.01.2010
Сообщений: 223
27.02.2011, 01:17
Слабое место в том, что полученные данные не фильтуются, почитай про SQL Injection. из POST-массива все полученные данные нужно записать в переменные, и пропустить их через функцию, которая отфильтрует по крайней мере ';'. только после этого можно подставлять переменные в запрос, иначе база данных рано или поздно будет взломана.

Ошибок я в этом коде не вижу. Разве не работает?
0
84 / 84 / 8
Регистрация: 12.04.2010
Сообщений: 324
27.02.2011, 06:35
Помоему так будет правильнее
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?
$result = mysql_query("
SELECT * FROM `users`
WHERE `login` = '".mysql_real_escape_string($_POST['login'])."'
AND `password` = '".mysql_real_escape_string($_POST['password'])."'
");
if ($result and mysql_num_rows($result) > 0) {
    echo "Вы авторизованы";
} else {
    echo "Неправильный логин/пароль";
}
?>
1
1 / 1 / 1
Регистрация: 26.02.2011
Сообщений: 28
27.02.2011, 12:51  [ТС]
Цитата Сообщение от xand Посмотреть сообщение
Помоему так будет правильнее
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?
$result = mysql_query("
SELECT * FROM `users`
WHERE `login` = '".mysql_real_escape_string($_POST['login'])."'
AND `password` = '".mysql_real_escape_string($_POST['password'])."'
");
if ($result and mysql_num_rows($result) > 0) {
    echo "Вы авторизованы";
} else {
    echo "Неправильный логин/пароль";
}
?>
большое всем спасибо за ответ xand
0
84 / 84 / 8
Регистрация: 12.04.2010
Сообщений: 324
27.02.2011, 16:27
Xryst, всегда пожалуйста
1
0 / 0 / 0
Регистрация: 17.11.2010
Сообщений: 18
28.02.2011, 12:07
Возможно ошибка не в коде, а том что ранее не была выбрана база данных, или остутстует подключение к mysql
0
28.02.2011, 15:35

Не по теме:

Цитата Сообщение от Xryst Посмотреть сообщение
SELECT * FROM `users`
да и вообще зачем выбирать все поля, чтобы посчитать кол-во?, достаточно выбрать только id

0
 Аватар для kernel
28 / 28 / 7
Регистрация: 12.06.2009
Сообщений: 71
01.03.2011, 18:30
PHP
1
2
3
4
$result = mysql_query("
SELECT * FROM users
WHERE login = '".$_POST['login']."'
AND password = '".$_POST['password']."'
Проверять пароль лучше всего отдельно а не в запросе. Для такого запроса легко написать SQL-injection. например попробуй так: login = qwert/* password = */ - должна получится инъекция.
Лучше всего сделать так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$query = mysql_query("SELECT login FROM users
                    WHERE login = '".$_POST['login']."'");
if($query){
    $result = mysql_fetch_array($query);
}
else{ 
    echo "Неправильный логин";
}
if($_POST['password'] === $result['password']){
    echo "Вы авторизованы";
} 
else {
    echo "Неправильный пароль";
}
0
34 / 32 / 2
Регистрация: 25.11.2010
Сообщений: 386
12.03.2011, 19:15
kernel,
я думаю так будет лучше
PHP
1
2
$query = mysql_query("SELECT * FROM users
                    WHERE login = '".$_POST['login']."'");
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.03.2011, 19:15
Помогаю со студенческими работами здесь

подскажите что в этом коде не так?
&lt;?php // Ошибки ini_set('display_errors', 1); error_reporting(E_ALL); ini_set(&quot;memory_limit&quot;, &quot;-1&quot;); set_time_limit(0); ...

Что не так в этом коде изменения длины строки?
Дана строка текста, в которой нет начальных и конечных пробелов. Необходимо изменить ее так, что бы длина строки стала равна заданной...

Можете сказать что в этом коде не так? он предназначен для вывода натуральных чисел по спирали
#include &lt;iostream&gt; using namespace std; int main() { int A,x=0,y=8; for(int i=0;i&lt;1;i++){ for(int...

Что означают все эти данные вот в этом коде PITHON и где можно найти описание всех этих данных в коде
#!/usr/bin/python # Quick and dirty demonstration of CVE-2014-0160 by Jared Stafford (jspenguin@jspenguin.org) # The author...

Как разобраться ,что в этом коде за что отвечает?
#include &lt;iostream&gt; #include &lt;ctime&gt; using namespace std; int main () { srand(time(NULL)); unsigned const int n=4,...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
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, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru