Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP: базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
pr0ph3t
0 / 0 / 0
Регистрация: 27.09.2016
Сообщений: 7
1

Сохранение полученного кода в базе данных и каждый раз при вводе проверять его на уникальность

23.10.2016, 14:07. Просмотров 918. Ответов 4
Метки нет (Все метки)

Вообщем я сейчас делаю сайт. Мне надо подключить оплату. Оплата у меня через активационные коды. Надо каждый раз сохранять полученный код в базе данных mysql и каждый раз проверять его на уникальность. Как это можно сделать через php?
PHP
1
2
3
4
5
6
$check_code = mysql_query("SELECT * FROM used_codes");
$row_check_code = mysql_fetch_array($check_code);
    if ($row_check_code[code] == $_POST[uniquecode])
    {
        echo '<center><p class="bg-danger">Этот код уже был активирован!</p></center>';
    }
Вот мой код, но проблема в том, что при вводе нового кода, он сверяет его только с первым значением в бд. Если я введу новый код то он его добавит в бд, но его можно будет заново потом активировать.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2016, 14:07
Ответы с готовыми решениями:

При вводе одинаковых чисел программа выдаёт каждый раз разные числа
uses crt; var a:arrayof integer; i,j,n,m,s:integer; begin s:=0; writeln('skoka chisel?');...

SQLite - постоянное подключение к базе или каждый раз при запросе?
Есть класс-синглтон работающий с SQLite, есть методы возвращающие данные из базы в нужном формате....

Клиент-серверное приложение. Как занести в цикл, чтобы каждый раз при вводе пары чисел, выводилась сумма?
Добрый день. Есть клиент-серверное приложение, которое суммирует пару чисел, но только один раз....

Сохранение курса валют в файл,что бы каждый раз при открытии не синхронизироваться?
Последние штрихи в программе . получается если нет доступа в инет не получится получить курсы...

При вводе кода Грея преобразовывать его в обычное число
Нужно написать программу который Года грея Нужно чтобы при вводе числа грея он преобразовывал его...

4
nekosoku
60 / 60 / 31
Регистрация: 24.05.2016
Сообщений: 202
23.10.2016, 14:13 2
Лучший ответ Сообщение было отмечено pr0ph3t как решение

Решение

pr0ph3t,
PHP
1
2
3
4
5
6
7
$code = $_POST['uniquecode']; // обезопасить обязательно
$check_code = mysql_query("SELECT * FROM `used_codes` WHERE `code` = {$code}");
if(mysql_num_rows($check_code) > 0) {
    // был активирован
} else {
    // добавляем
}
1
Para bellum
Эксперт PHP
4190 / 3119 / 1011
Регистрация: 06.01.2011
Сообщений: 9,092
23.10.2016, 14:15 3
SQL
1
SELECT COUNT(*) FROM `used_codes` WHERE `поле с кодом`='код'
1
pr0ph3t
0 / 0 / 0
Регистрация: 27.09.2016
Сообщений: 7
23.10.2016, 15:58  [ТС] 4
Спасибо всем за помощь, сейчас проверю.

Добавлено через 1 час 7 минут
Спасибо, вам ребят, очень выручили!
0
Зверушь
456 / 364 / 94
Регистрация: 01.05.2010
Сообщений: 1,745
24.10.2016, 12:21 5
Лучший ответ Сообщение было отмечено Para bellum как решение

Решение

Кроме того, поле с кодом нолжно быть уникальным на уровне БД. БД должна отказать в записи повторяющихся элементов. Это легко делаяется. Просто добавьте к полю UNIQUE.
0
24.10.2016, 12:21
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.10.2016, 12:21

Проверка на уникальность реквизита при вводе в форме.
Здравствуйте. Есть справочник &quot;Рабочие места&quot; в который помимо остального входит реквизит...

При вводе продаж проверять наличие товара
Есть: 1. таблица &quot;Приход товара&quot; - код товара, кол-о 2. таблица &quot;Продажи&quot; - код товара, кол-о...

Написать процедуру или функцию, позволяющую проверять при вводе массив
Вводится массив. Если пользователем будет введено не число, а символ, то нужно снова запросить ввод...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.