Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Получение ID номера вместо логина

 PHP.SU

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


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

> Без описания
zamut
Отправлено: 21 Января, 2017 - 16:20:13
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Окт. 2013  


Помог: 0 раз(а)




Здравствуйте. Подскажите пожалуйста, как можно сделать так, что бы при регистрации пользователь не выдумывал себе логин, а получал его автоматически на почту в виде ID номера. И в при дальнейшем использовании сайта входил уже только по ID. Пример это WebMoney где присваивается WMID. Как реализовать подобное у себя на сайте?
 
 Top
teleoperator27
Отправлено: 21 Января, 2017 - 16:33:16
Post Id



Посетитель


Покинул форум
Сообщений всего: 265
Дата рег-ции: Янв. 2017  


Помог: 21 раз(а)




Что значит "как сделать так"? В бд ему так и так ID присваивается, его и используйте на здоровье
 
My status
 Top
zamut
Отправлено: 22 Января, 2017 - 07:09:24
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Окт. 2013  


Помог: 0 раз(а)




teleoperator27 пишет:
Что значит "как сделать так"? В бд ему так и так ID присваивается, его и используйте на здоровье


Хорошо, есть ID в бд, а дальше что? Номер нужно автоматически отослать пользователю на почту в качестве его логина. По задумке пользователь при входе будет указывать этот ID и свой пароль. Причем ID будет связан с номером телефона указанного при регистрации. Дополнительно на телефон будет будет высылаться временный код. И только после всего этого пользователь попадет в свой кабинет. Я искал в сети, но там все разрозненно и обобщенно. Такой вход сделан в личных кабинетах WebMoney, Сбербанка и др. А как это сделано...?
 
 Top
3d_killer
Отправлено: 22 Января, 2017 - 10:48:06
Post Id



Участник


Покинул форум
Сообщений всего: 1916
Дата рег-ции: Апр. 2011  
Откуда: Ростов-на-Дону


Помог: 21 раз(а)




ну в чем проблема, ID сам создался (автоинкремент), отправляй на почту, так же в этой строке базы данных указываешь телефон, потом восстанавливай по ID или номеру телефона хоть по почте (дополнительный столбец), или заходи с любого из указанных параметров
 
My status
 Top
skruglikov
Отправлено: 23 Января, 2017 - 06:17:46
Post Id



Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Янв. 2017  
Откуда: Киев, Украина


Помог: 1 раз(а)




вообще такие ID необходимо создавать по определенному алгоритму, а не просто брать порядковый номер записи БД! как правило это комбинации латинских букв и цифр, он же как минимум должен иметь понятный вид ;) не зря же вы привели пример "WMID"... сгенеренный ID записывается в БД, а алгоритм нужно продумать самому.
 
 Top
zamut
Отправлено: 23 Января, 2017 - 06:53:08
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Окт. 2013  


Помог: 0 раз(а)




3d_killer пишет:
ну в чем проблема, ID сам создался (автоинкремент), отправляй на почту, так же в этой строке базы данных указываешь телефон, потом восстанавливай по ID или номеру телефона хоть по почте (дополнительный столбец), или заходи с любого из указанных параметров


Где в сети можно посмотреть хотя бы приблизительный пример реализации этого в коде?
(Добавление)
skruglikov пишет:
вообще такие ID необходимо создавать по определенному алгоритму, а не просто брать порядковый номер записи БД! как правило это комбинации латинских букв и цифр, он же как минимум должен иметь понятный вид ;) не зря же вы привели пример "WMID"... сгенеренный ID записывается в БД, а алгоритм нужно продумать самому.


Очень даже верно. БД ведет порядковый учет, а в моем случае ID должен быть независим. На чем (язык) лучше всего сделать такой алгоритм?
 
 Top
teleoperator27
Отправлено: 23 Января, 2017 - 07:07:18
Post Id



Посетитель


Покинул форум
Сообщений всего: 265
Дата рег-ции: Янв. 2017  


Помог: 21 раз(а)




zamut пишет:
БД ведет порядковый учет, а в моем случае ID должен быть независим.
И чем не устраивает порядковый номер? Начни таблицу с 10000 id, добвь буквы и пользуйся. Вообще, такие вещи надо решать на конкретный задачах, а не абстракно
skruglikov пишет:
Где в сети можно посмотреть хотя бы приблизительный пример реализации этого в коде?
А ты точно программист? Разбей задачу на фрагменты и гугли, как получать данные, как отправлять на почту, как восстанавливать по номеру телефона и т.д.
 
My status
 Top
zamut
Отправлено: 24 Января, 2017 - 07:49:46
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Окт. 2013  


Помог: 0 раз(а)




teleoperator27 пишет:
zamut пишет:
БД ведет порядковый учет, а в моем случае ID должен быть независим.
И чем не устраивает порядковый номер? Начни таблицу с 10000 id, добвь буквы и пользуйся. Вообще, такие вещи надо решать на конкретный задачах, а не абстракно
skruglikov пишет:
Где в сети можно посмотреть хотя бы приблизительный пример реализации этого в коде?
А ты точно программист? Разбей задачу на фрагменты и гугли, как получать данные, как отправлять на почту, как восстанавливать по номеру телефона и т.д.


Я не программист, мой потолок пока, это html, css ну и готовые скрипты js. Просто обстоятельства так сложились, что приходится все делать самому. Отсюда и вопросы, которые могут показаться "детскими" для профессионала.
 
 Top
skruglikov
Отправлено: 24 Января, 2017 - 12:13:47
Post Id



Новичок


Покинул форум
Сообщений всего: 22
Дата рег-ции: Янв. 2017  
Откуда: Киев, Украина


Помог: 1 раз(а)




zamut пишет:
Где в сети можно посмотреть хотя бы приблизительный пример реализации этого в коде?


когда-то делал простой генератор артикулов для товаров... дело в том, что у заказчика были товары, и по счастливой случайности, ни одного артикула, что не совсем то кашерно ;)

логика, простая до безобразия... в данном, случае передаётся единственный параметр — это имя производителя или бренд... на выходе получался буквенно-цифровой код!

думаю в качестве элементарного примера пойдёт.

PHP:
скопировать код в буфер обмена
  1.  
  2. <?if($USER->IsAdmin()):?>
  3.         <?
  4.                 // Prefix generator
  5.                 function prefix_generator($string) {
  6.                         $replace_pairs = array("A" => "", "a" => "", "E" => "", "e" => "", "I" => "", "i" => "", "O" => "", "o" => "", "U" => "", "u" => "",);
  7.                         return substr(strtr($string, $replace_pairs), 0, 3);
  8.                 }
  9.                 // Generator of unique numbers
  10.                 function rand_str($prefix = false, $length = 7, $chars = "0123456789") {
  11.                         // получаем длину строки символов
  12.                         $chars_length = (strlen($chars) - 1);
  13.                         // Итак, строчка начинается
  14.                         $string = $chars{ rand(0, $chars_length) };
  15.  
  16.                         // Генерируем
  17.                         for ($i = 1; $i < $length; $i = strlen($string))  {
  18.                                 // Берем случайный элемент из набора символов
  19.                                 $r = $chars{rand(0, $chars_length)};
  20.                                 // Убеждаемся, что соседние символы не совпадают.
  21.                                 if ($r != $string{$i - 1}) $string .=  $r;
  22.                         }
  23.  
  24.                         return $prefix ? $prefix.$string : $string;
  25.                 }
  26.  
  27.                 $brand_prefix = isset($_POST["manufacturer"]) ? prefix_generator($_POST["manufacturer"]) : '';
  28.  
  29.         ?>
  30.         <div class="row">
  31.                 <div class="large-6 column">
  32.                         <form method="post">
  33.                                 <p>
  34.                                         <label for="manufacturer">Укажите производителя (латиница)
  35.                                                 <input id="manufacturer" type="text" name="manufacturer" value="<?=$_POST["manufacturer"]?>" />
  36.                                         </label>
  37.                                 </p>
  38.                                 <p>
  39.                                         <input class="button secondary radius small" type="submit" value="Создать" />
  40.                                 </p>
  41.                         </form>
  42.                 </div>
  43.                 <div class="large-6 column">
  44.                         <div class="panel">
  45.                                 <?if(!empty($brand_prefix)):?>
  46.                                         <h2><?=strtoupper(rand_str($brand_prefix))?></h2>
  47.                                 <?else:?>
  48.                                         <p>Укажите производителя товара для которого необходимо создать артикул.</p>
  49.                                 <?endif;?>
  50.                         </div>
  51.                 </div>
  52.         </div>
  53. <?else:?>
  54.         <? LocalRedirect("/"); ?>
  55. <?endif;?>
  56.  
 
 Top
zamut
Отправлено: 24 Января, 2017 - 18:10:53
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Окт. 2013  


Помог: 0 раз(а)




skruglikov большое спасибо. Буду изучать.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB