PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (1): [1]

> Найдено сообщений: 2
AlxB57 Отправлено: 23 Ноября, 2013 - 18:33:24 • Тема: Проверка на наличие в БД при генерации пароля • Форум: Вопросы новичков

Ответов: 4
Просмотров: 280
_Dark_ Логин рандомное число от 100000 до 999999. По порядку не подходит. Я хочу чтобы было случайное число.

teddy Можете код привести?
(Добавление)
teddy Вот так правильно?
PHP:
скопировать код в буфер обмена
  1.  
  2. # проверяем, не сущестует ли пользователя с таким именем
  3. $loginpartner =  mt_rand(100000, 999999);
  4. $query = mysql_query("SELECT COUNT(partner_id) FROM partners WHERE partner_login='".$loginpartner."'");
  5.  
  6. while (mysql_result($query, 0) > 0) {
  7.  
  8.     $loginpartner =  mt_rand(100000, 999999);
  9. };
AlxB57 Отправлено: 23 Ноября, 2013 - 17:51:08 • Тема: Проверка на наличие в БД при генерации пароля • Форум: Вопросы новичков

Ответов: 4
Просмотров: 280
Всем привет!
Дано:
Генерация логина :

Проверка в БД на совпадение -
PHP:
скопировать код в буфер обмена
  1.  $query = mysql_query("SELECT COUNT(partner_id) FROM partners WHERE partner_login='".$loginpartner."'");


Условие проверки -

Вопрос как это объединить в проверку которая по возвращении значения больше нуля снова бы генерировала логин, проверяла на совпадение снова?

Как я понял мне нужен цикл. Я думаю так:

PHP:
скопировать код в буфер обмена
  1. $query = mysql_query("SELECT COUNT(partner_id) FROM partners WHERE partner_login='".$loginpartner."'");
  2.  
  3. do {
  4.  
  5. $loginpartner =  mt_rand(100000, 999999);
  6.  
  7. } while (mysql_result($query, 0) > 0);


Правильно ли эта конструкция? Если нет помогите составить, пожалуйста.

Т.е. чего я хочу:

1. Генерю логин партнера mt_rand
2. Проверяю сгенеренный логин селектом на наличие совпадений в БД
2.1. Если есть такой логин, то:
2.1.1 Снова генерю логин.
2.1.2. Снова проверяю.
3. Если такого логина (который был сгенерирован в п.1) нет в БД, пишу его в БД

И все проверки должны быть без echo! т.е. скрипт сам проверяет и сам генерирует, до момента удовлетворения условиям.

PS Если я изобретаю велосипед подскажите как это сделать без изобретений Улыбка

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB