Помогите с базой данных, а именно таблицей cms_users

#1 10 августа 2010 в 20:59
Случайно наткнулся на эту тему: instantcms.ru/forum/thread1898.html

Решил на своем сайте наклацать сотню анкет пользователей. Самому заполнять все данные трудно. Решил пойти более легким путем, а именно в таблицу cms_users вписать новых пользователей. Все сделал (Но не сотню, а пол-сотни). Но вот тут возникли трудности:
1. Пользователи не отображаются на сайте и админке :
Вид на сайте:



Вид в админке:



В адмике пользователи не отображаются :



А в базе пользователи отображаются:



Пользователей в таблицу cms_users вписывал следующем образом, выполнял sql — запрос:

  1. INSERT INTO `b9_4549572_soc2`.`cms_users` (`id`, `group_id`, `login`, `nickname`, `password`, `email`, `icq`, `regdate`, `logdate`, `birthdate`, `is_locked`, `is_deleted`, `rating`, `points`, `last_ip`, `status`, `status_date`) VALUES (NULL, '1', 'reрunt', 'Виктор Петров', MD5('password'), 'enda09@totmail.com', '', '2010-08-10 16:29:08', '2010-08-10 16:29:08', '2010-08-25', '0', '1', '652', '0', '196.77.43.43', '', '');
Мне кажется, возможно надо по колдовать с таблицей cms_users_profile.
Прошу помощи… zst
#2 10 августа 2010 в 21:14
Дима, так делать не надо. В твоем случае надо первое это удалить все что ты руками насоздавал.
А второе либо писать скрипт, который автоматом будет создавать определенное кол-во пользователей.

Мне кажется, возможно надо по колдовать с таблицей cms_users_profile.

Дима
Да, при создании пользователя, запись делается в двух таблицах — cms_users и cms_users_profile.
  1. $sql = "INSERT INTO cms_users (login, nickname, password, email, icq, regdate, logdate, birthdate, is_locked)
  2. VALUES ('$login', '$nickname', '$pass', '$email', '$icq', '$today', NOW(), '$birthdate', '$is_locked')";
  3. $sql = "INSERT INTO cms_user_profiles (user_id, city, description, showmail, showbirth, showicq, karma, imageurl, allow_who)
  4. VALUES (".$new_user_id.", '$city', '', '0', '0', '1', '0', '', 'all')";
#3 10 августа 2010 в 21:22
fuze[drums], я последую твоему совету. Постараюсь сделать скрипт, который автоматом будет регистрировать пользователей, хотя будет сложно.

]Дима, так делать не надо

fuze[drums

Если не секрет почему ???
#4 10 августа 2010 в 21:24

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

Дима
Это будет в будущем, когда под учу php… scratch
#5 10 августа 2010 в 21:54

Если не секрет почему ???

Дима

Мне кажется, возможно надо по колдовать с таблицей cms_users_profile.

Дима

  1. $sql = "INSERT INTO cms_users (login, nickname, password, email, icq, regdate, logdate, birthdate, is_locked) 2        VALUES ('$login', '$nickname', '$pass', '$email', '$icq', '$today', NOW(), '$birthdate', '$is_locked')"; 3    $sql = "INSERT INTO cms_user_profiles (user_id, city, description, showmail, showbirth, showicq, karma, imageurl, allow_who) 4            VALUES (".$new_user_id.", '$city', '', '0', '0', '1', '0', '', 'all')";

fuze
#6 10 августа 2010 в 22:15

]

Если не секрет почему ???

Дима

Мне кажется, возможно надо по колдовать с таблицей cms_users_profile.

Дима

  1. $sql = "INSERT INTO cms_users (login, nickname, password, email, icq, regdate, logdate, birthdate, is_locked) 2        VALUES ('$login', '$nickname', '$pass', '$email', '$icq', '$today', NOW(), '$birthdate', '$is_locked')"; 3    $sql = "INSERT INTO cms_user_profiles (user_id, city, description, showmail, showbirth, showicq, karma, imageurl, allow_who) 4            VALUES (".$new_user_id.", '$city', '', '0', '0', '1', '0', '', 'all')";

fuze

fuze[drums


Не понял. shock
#7 10 августа 2010 в 23:54
И чтоб не создавать тему, задам еще один вопрос здесь:

Вот обыкновенная форма авторизации на сайте:


В этом случае данные: demo и пароль отправляются обработчику /login

Что мне надо:

1. Какие еще данные отправляются обработчику???
2. Где находиться этот обработчик???
3. Какие данные сохраняются на компе у пользователя???
#8 11 августа 2010 в 15:34
Ну что кто поможет по второму вопросу???
#9 11 августа 2010 в 16:01

Где находиться этот обработчик???


Файл components\registration\frontend.php

Там такие строки:

  1. if ($do=='auth'){
  2.  
  3. ...............
  4. ..............
  5. .............
  6.  
  7. if( !$inCore->inRequest('logout') ) {
  8.  
  9. ...............
  10. .............
  11. ...........
  12. вот тут то он и находится!
  13.  
  14. ............
  15. .............
  16. ...............
  17.  
  18. //Редиректим назад
  19. $inCore->redirect($url);
  20.  
  21. } else {
  22. $inCore->redirect('/auth/error.html');
  23. }
  24.  
  25. }
  26.  
  27. }
  28.  
  29.  
  30.  
  31.  
  32.  
#10 11 августа 2010 в 16:04

1. Какие еще данные отправляются обработчику???


Присмотревшись к коду понимаем:

1) Логин
  1. if ($inCore->inRequest('login')) { $login = $inCore->request('login', 'str'); } else { $inCore->redirect($back); }
2) Пароль
  1. if ($inCore->inRequest('pass')) { $passw = $inCore->request('pass', 'str'); } else { $inCore->redirect($back); }
3) "Галочка запомнить меня"
  1. $remember_pass = $inCore->inRequest('remember');
#11 11 августа 2010 в 16:07

3. Какие данные сохраняются на компе у пользователя???


  1. if ($remember_pass){
  2. $cookie_code = md5($user['id'] . $user['password']);
  3. $inCore->setCookie('userid', $cookie_code, time()+60*60*24*30);
  4. }
Думается что это пароль laugh
#12 11 августа 2010 в 17:24
Не совсем пароль, а его подсоленный (хотя и слабо) md5-хэш. Узнать id пользователя достаточно просто.
#13 11 августа 2010 в 22:44
Всем спасибо!!! Помогли!!! laugh
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.