Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа с результатом проверки по БД 
:(
    Опции темы
dimon4ik456
  Дата 12.6.2009, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 12.6.2009

Репутация: нет
Всего: нет



Пользователь при регистрации вводит логин. Потом жмет далее. Логин проверяется в БД:
Код
$login = $im->login;

mysql_query("SELECT * FROM users WHERE login='$login'");
    if(mysql_affected_rows()==0)  $_SESSION['login'] = $im->login; 
          else {
               while ?????


Если такого логина нет то по сессии идет дальше, а вот если такой логин есть, то мне нужно выполнить процесс генерации:
Код
$im->genlogin();


и потом проверить генерированный логин на наличие в БД, если есть то опять все заново.

Я думаю что это нужно реализовать циклом, но вот как поставить там условие немогу сообразить!?
Может кто подскажет?

Это сообщение отредактировал(а) dimon4ik456 - 12.6.2009, 19:02
PM MAIL   Вверх
Veve
Дата 12.6.2009, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 1.1.2005
Где: Латвия, Рига

Репутация: 3
Всего: 13



Не уверен что до конца понял.. но, думаю вы хотите это:
Код

$exist=true;
while ($exist)
{
    $login = $im->genlogin();
    mysql_query("SELECT * FROM users WHERE login='$login'");
    if(mysql_affected_rows()==0)  
     {
       $_SESSION['login']; 
        $exist=false;
     }
    else echo "Занято";
}

PM MAIL ICQ Skype MSN   Вверх
dimon4ik456
  Дата 12.6.2009, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 12.6.2009

Репутация: нет
Всего: нет



Нет, мне не нужно ничего выводить на экран. Мне нужно если логин сущетсвует в БД, запустить спец генератор логина командой $im->genlogin();. Сгенерированный логин будет в переменоой $im->login(); и теперь сгенерированный логин проверить на существование в БД, если существует то  генерирум другой и т.д. а если не существует то $_SESSION['login'] = $im->login();. и все smile
PM MAIL   Вверх
MoLeX
Дата 15.6.2009, 06:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Код

for( ;; )  // =)
{
    $new_login = $im->genlogin();
    $chek = mysql_query("SELECT * FROM users WHERE login='$new_login'");
    if(mysql_num_rows($chek) == 0)
    {
          $_SESSION['login'] = $new_login;
          return;
    }
}


что-то вроде так...

Добавлено через 13 секунд
сочинял на коленке


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0440 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.