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

SELECT проверка по БД

14.01.2018, 00:38. Показов 1663. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую!

Пытался написать проверку по БД на значение steamid, но постоянно получаю срабатывание else и соотвецтвино SteamID не найден.
Что может быть не так?
Заранее Спасибо!

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$host='localhost';
$database='csgoxwon';
$user='root';
$password='';
mysqli_connect($host, $user, $password, $database);
$balance = htmlentities(mysqli_real_escape_string($link, $_POST['balance']));
if ($_POST['steamid'] && $_POST['balance']){
$query = mysqli_query("SELECT steamid FROM users WHERE steamid='".mysqli_real_escape_string($_POST['steamid'])."' LIMIT 1");
$data = mysqli_fetch_assoc($query);
if ($data['steamid'] === $_POST['steamid']) {
        echo "<span style='color:blue;'>Баланс обновлен</span>";
}else{
        echo "<span style='color:red;'>SteamID не найден</span>";
 }
}
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<p><form method="post">
    <tr>
        <td>&nbsp&nbspSteamID:&nbsp&nbsp</td>
        <td><input type="text" name="steamid" value=""></td>
    </tr>
    <tr>
        <td>&nbsp&nbspБаланс:&nbsp&nbsp</td>
        <td><input type="text" name="balance" size="3" value="">&nbsp&nbsp coins</td>
    </tr>
    <tr>
        &nbsp&nbsp&nbsp <td colspan="2"><input type="submit" value="УСТАНОВИТЬ БАЛАНС"></td>
    </tr>
</form></p>
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.01.2018, 00:38
Ответы с готовыми решениями:

Не работает проверка select
Добрый день! Помогите пожалуйста разобраться с проблемой. Суть в следующем. Есть выпадающий список, и кнопка-ссылка, (&lt;a&gt; без...

JS проверка form на выбранный select
Здравствуйте. Код $(document).ready(function(){ $(&quot;form#contactForm&quot;).submit(function() { //When the form is...

Проверка выбранного поля select
Доброго времени суток! Есть задачка - сделал конвертор длинны на php,но на javascript это тоже надо сделать. Делалось с помощью форм,...

22
27 / 26 / 11
Регистрация: 19.06.2014
Сообщений: 158
14.01.2018, 01:02
Лучший ответ Сообщение было отмечено leppo как решение

Решение

Цитата Сообщение от leppo Посмотреть сообщение
SELECT steamid FROM users WHERE steamid=
Мне, почему то, кажется Ваш запрос бессмысленным. Вы пытаетесь узнать поле steamid пользователя, steamid которого Вам известен...
Или это запрос специально для теста?

Цитата Сообщение от leppo Посмотреть сообщение
Что может быть не так?
Первый вопрос: Вы уверены, что в БД есть запись с соответствующим steamid?
Для начала, распечатайте, что Вы получаете из массива $_POST.
Затем проверьте $query, вернулся ли ответ. Потому что Вы запускаете mysqli_fetch_assoc не зная, есть ли данные для считывания.
1
0 / 0 / 0
Регистрация: 14.01.2018
Сообщений: 8
14.01.2018, 01:33  [ТС]
Спасибо за ответ!

SELECT steamid FROM users WHERE steamid=
Исправил

$_POST распечатал, получил данные с name="steamid"

А вот $result = mysql_query($query); print mysql_num_rows($result); почему то не дал никаких результатов.
0
27 / 26 / 11
Регистрация: 19.06.2014
Сообщений: 158
14.01.2018, 02:12
Что вернул mysql_num_rows ?

Возьмите свой запрос, подставьте в него значение steamid из $_POST и выполните прямо в СУБД (Phpmyadmin, или что там у Вас). Если все будет ок, значит запрос верный и ошибку надо искать в коде.
0
0 / 0 / 0
Регистрация: 14.01.2018
Сообщений: 8
14.01.2018, 02:23  [ТС]
mysql_num_rows ничего не вернул..

Запрос провел, все работает. Проблема в самом коде.
0
27 / 26 / 11
Регистрация: 19.06.2014
Сообщений: 158
14.01.2018, 02:26
Цитата Сообщение от leppo Посмотреть сообщение
mysql_num_rows ничего не вернул..
Так не должно быть.
Попробуйте распечатать его результат не через print, а через var_dump().
0
0 / 0 / 0
Регистрация: 14.01.2018
Сообщений: 8
14.01.2018, 02:29  [ТС]
получил NULL
0
27 / 26 / 11
Регистрация: 19.06.2014
Сообщений: 158
14.01.2018, 02:31
Выложите, пожалуйста, код с исправленным запросом и покажите, как вы делаете проверку.
0
0 / 0 / 0
Регистрация: 14.01.2018
Сообщений: 8
14.01.2018, 02:38  [ТС]


PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$host='localhost';
$database='csgoxwon';
$user='root';
$password='';
mysqli_connect($host, $user, $password, $database);
$balance = $_POST['balance'];
$steamid = $_POST['steamid'];
if ($_POST['steamid'] && $_POST['balance']){
$query = mysqli_query("SELECT * FROM `users` WHERE steamid='$steamid' LIMIT 1");
print $steamid;
var_dump($query);
$data = mysqli_fetch_assoc($query);
if ($data['steamid'] === $_POST['steamid']) {
        echo "<span style='color:blue;'>Баланс обновлен</span>";
}else{
        echo "<span style='color:red;'>SteamID не найден</span>";
 }
}
0
 Аватар для _HoBu4oK_
4 / 3 / 1
Регистрация: 18.07.2017
Сообщений: 85
14.01.2018, 02:47
leppo, внимательно осмотрите строчку 9, там кроется ошибка (может одна из ошибок).
1
27 / 26 / 11
Регистрация: 19.06.2014
Сообщений: 158
14.01.2018, 02:51
В 9-ю строку добавьте после закрывающей скобки:
PHP
1
 or die(mysql_error())
Что выводит?
0
0 / 0 / 0
Регистрация: 14.01.2018
Сообщений: 8
14.01.2018, 02:56  [ТС]
Срабатывает die, выводит пустую страницу.
0
27 / 26 / 11
Регистрация: 19.06.2014
Сообщений: 158
14.01.2018, 03:00
Извините, опечатался:
PHP
1
or die(mysqli_error())
1
0 / 0 / 0
Регистрация: 14.01.2018
Сообщений: 8
14.01.2018, 03:01  [ТС]
То же самое.
0
27 / 26 / 11
Регистрация: 19.06.2014
Сообщений: 158
14.01.2018, 03:08
По правде говоря, не знаю, что и думать.
Проверьте mysqli_query, может где-то русский символ попался.
Не должна эта функция возвращать NULL o_O
0
Web Programmer
 Аватар для JimUSA
325 / 286 / 121
Регистрация: 28.09.2011
Сообщений: 1,570
14.01.2018, 03:26
leppo, mysqli_query должен принять соединение mysqli_connect
0
 Аватар для _HoBu4oK_
4 / 3 / 1
Регистрация: 18.07.2017
Сообщений: 85
14.01.2018, 03:52
jasper-blondin, может я капитан-очевидность, а возможно я очень глупый, но мне кажется steamid в строчке 9 надо обернуть в `steamid`, что думаете?
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
14.01.2018, 12:28
Цитата Сообщение от _HoBu4oK_ Посмотреть сообщение
но мне кажется steamid в строчке 9 надо обернуть в `steamid`, что думаете?
Для чего используются обратные кавычки в mysql? И выше уже правильно заметили про аргументы функции mysqli_query
Цитата Сообщение от leppo Посмотреть сообщение
$balance = htmlentities(mysqli_real_escape_string($ link, $_POST['balance']));
Зачем???
0
26 / 26 / 17
Регистрация: 23.12.2017
Сообщений: 111
14.01.2018, 12:33
Если ошибку не выдаёт, то это может означать только одно: в таблице user такого пользователя нет. Вот null и выводит.
Сделайте "select * from user", без всякого WHERE, да и просто визуально просмотрите, есть в природе такой, или нет.
0
 Аватар для _HoBu4oK_
4 / 3 / 1
Регистрация: 18.07.2017
Сообщений: 85
14.01.2018, 13:22
Jewbacabra, обратные кавычки для того, чтобы mysql " мог разобрать что это". Согласитесь, бывает, что если их не поставить - БД тупит, и ИМЕННО НЕ НАХОДИТ такого значения, а следовательно и null.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.01.2018, 13:22
Помогаю со студенческими работами здесь

Проверка выбранного значения в select
Добрый вечер! Прошу не пинать, если уже была такая тема. Искал не нашел. Как получить значение из тега select(выбранное) в переменную...

Проверка выделенных option в select
у меня есть список &lt;select multiple=&quot;&quot;&gt; &lt;option selected=&quot;&quot; value=&quot;1&quot;&gt; Киев &lt;/option&gt; &lt;option selected=&quot;&quot;...

Проверка запроса SELECT на null
Помогите, пожалуйста, разобраться. В общем, в зависимости от того, какой ответ получится от запроса SELECT, нужно производить выбор, типа...

Проверка и выделение нужного элемента в Select
Есть список и опции. &lt;select name=&quot;add_val&quot;&gt; &lt;option value=&quot;0&quot; selected&gt;нет&lt;/option&gt; &lt;option value=&quot;1212&quot; &gt;1&lt;/option&gt; ...

Проверка выбранных <option> в <select multiple>
Всем привет, есть такой селект: &lt;select id=&quot;Materials&quot; size=&quot;6&quot; multiple&gt; &lt;option style=&quot;background-color:#333;color:#fff;&quot;...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru