| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Sanja v.2 08.03.2005 19:46 / 08.03.2005 19:55
Либо я не замечаю очевидную ошибку, либо оно не работает...@USE
lib.p
mssql.p
my_auth.p
@auto[]
# Параметры подключения к базе данных MSSQL:
$SQL.connect-string[odbc://Driver={SQL Server}^;
Server=127.0.0.1^;
Database=GFKForum^;
# AutoTranslate=no^;
UID=sa^;
PWD=censored!^;
App=Parser^;
Language=English^;
StatsLog_On=no^;
QueryLog_On=no^;
Regional=no^;
Description=Parser^;
Trusted_Connection=no^;
ClientCharset=windows-1251^;
]
# создаем SQL объект через который будут происходить все обращения к SQL
$MAIN:pSQL[^mssql::init[$SQL.connect-string;$.is_debug(1)]]
# Подключаем класс авторизации:
^MAIN:pSQL.server{
$auth[
^my_auth::init[
$cookie:CLASS;
$form:fields;
$.csql[$pSQL]
$.timeout(1)
$.event_lifetime(60)
$.event_min_count(300)
$.additional_fields[^table::create{select update field
last_name last_name last_name
first_name first_name first_name
middle_name middle_name middle_name
YEAR(dt_birth) dt_birth
photo}]
]
]
}Класс-прослойка my_auth.p: @CLASS
my_auth
@USE
auth.p
@BASE
auth
@init[icookie_data;ilogon_data;iparams]
^BASE:init[$icookie_data;$ilogon_data;$iparams]
########################################
# Переопределенный метод Logon
# @htmlFormLogon[in_params][lparams]
# ...
# ...
## End @htmlFormLogon
# коды ошибок
@getErrors[]
$result[^table::create{id name
1 Вы не авторизовались
2 Вы не указали имя для регистрации
4 Выбранное вами имя уже существует
8 Вы не указали пароль
16 Введённые пароли не совпадают
32 Вы не указали Email-адрес
64 Похоже, что указанный вами Email неверен
128 Пользователь не наден
256 Найдено сразу несколько пользователей
32768 Неизвестная ошибка
}]
#end @getErrors[] В auth_mssql.sql добавил нужные столбцы. К себе, единственному пользователю, в поле first_name и last_name вписал букв от балды. Теперь вызываем тестовый файлик auth.html @USE my_auth.p @main[] <p> <b>Информация о пользователе:</b><br /> Логин: $auth.user.name<br /> Test1: $auth.first_name <br /> Test2: $auth.last_name <br /> </p>Вызываю http://127.0.0.1/auth.html?mode=debug и получаю:
Информация о пользователе: Логин: Sanja Test1: Test2: Sanjaсмотрю на последние две строки и удивляюсь. Лезу в sql.txt и нахожу там: