Heckfy Опубликовано 4 Августа 2004 Жалоба Поделиться Опубликовано 4 Августа 2004 хотел поинтересоваться как можно при заходе в чат выполнить проверку, пользователь авторизирован в форуме или нет, если да то зайти без ввода логина и пароля, если нет, то сам разберусь Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 5 Августа 2004 Жалоба Поделиться Опубликовано 5 Августа 2004 Проверить куки на наличие member_id и pass_hash, сделать соответствующий запрос к таблице ibf_sessions (проверить правильность пароля). Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Heckfy Опубликовано 5 Августа 2004 Автор Жалоба Поделиться Опубликовано 5 Августа 2004 с запросом и сравнением справлюсь, а вот куки проверить...просто руки еще до них не дошли, если не трудно подскажите пожалуйста,как правильно извлечь из кук member_id и pass_hash,спасибо. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 5 Августа 2004 Жалоба Поделиться Опубликовано 5 Августа 2004 Есть такая волшебная переменная: $_COOKIE$_COOKIE['member_id'], например, в простейшем случае даст нам нужный member_id.Однако учитывая то, что у куков могут быть ещё префиксы и т.п., самое правильное решение - сделать по образу и подобию функции my_getcookie(), которая лежит в functions.php Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Heckfy Опубликовано 8 Августа 2004 Автор Жалоба Поделиться Опубликовано 8 Августа 2004 все ясно.теперь только не понятно, если куков не существует, как это определить? и вообще как опредилить какой кукис читать? там их много, или она считывает только от собственного домена? у меня две папки domen.ru/forum/ и domen.ru/chat/ на одном доменеесли я буду при входе в чат domen.ru/chat/index.php читать эти самые куки из форума, он извлечет эти данные из кук которые мне нужны или нет? если нет помогите пожалуйста разобраться как это осуществить, заранее благодарю. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 8 Августа 2004 Жалоба Поделиться Опубликовано 8 Августа 2004 теперь только не понятно, если куков не существует, как это определить?Проверь переменные на пусто/не пусто, да и все дела...и вообще как опредилить какой кукис читать? там их много, или она считывает только от собственного домена?Ты вообще знаком с механизмом работы куков? Куки читаются только свои. меня две папки domen.ru/forum/ и domen.ru/chat/ на одном доменеесли я буду при входе в чат domen.ru/chat/index.php читать эти самые куки из форума, он извлечет эти данные из кук которые мне нужны или нет?Откуда я знаю? Самому попробовать слабо?если нет помогите пожалуйста разобраться как это осуществить, заранее благодарю.Если нет, то ты опять же сможешь сам себе помочь. Во-первых, прочитай те темы, что есть здесь по работе кукис (как правильно настроить, + тема "Авторизация" в разделе FAQ). Сначала попробуй настроить куки грамотно. Во-вторых, если первое не поможет, см. выше:самое правильное решение - сделать по образу и подобию функции my_getcookie(), которая лежит в functions.phpТы функцию my_getcookie() смотрел? Ладно, риторический вопрос. Вот, так посмотри! Там как раз на все случаи жизни, домены и префиксы особая обработка. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Heckfy Опубликовано 8 Августа 2004 Автор Жалоба Поделиться Опубликовано 8 Августа 2004 смотрел, самое первое что я начал делать это искать файл где осуществляется чтение кук, и как форум создает сессии, но к сожалению не чего интересного там не нашел, вот и решил создать тему. После твоего совета я открыл functions.php, но там для меня мало чего понятно, я с классами еще не работал и поэтому сложновато пока разобраться в коде.вот сама функция my_getcookie() function my_getcookie($name) { global $INFO, $HTTP_COOKIE_VARS; if (isset($HTTP_COOKIE_VARS[$INFO['cookie_id'].$name])) { return urldecode($HTTP_COOKIE_VARS[$INFO['cookie_id'].$name]); } else { return FALSE; } } как я понял это всего лишь его часть..ладно не важно, буду пробовать первое, спасибо за совет. Откуда я знаю? Самому попробовать слабо?не слабо, просто не до этого было, вот и решил перед эксперементом поинтересоваться и последнее, раз тема про интеграцию воспользуюсь моментом спросить какая замена символов у форума при регистрации переменной $name? т.е. имя при регистрации.В файле регистрации я наткнулся на такое if (!preg_match("/^(?:[\d\w]){32}$/", $user)){выполнение кода}но это не сработало.Т.е. мне надо было найти в форуме какие символы не допускаются при регистрации пользователя (ника), я делаю в чате гостевой вход и мне надо вырезать те символы которые вырезает форум при регистрации ника, что бы не было похожих ников в чате, вот.. вроде бы как ясно обяснил Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
theIggs Опубликовано 9 Августа 2004 Жалоба Поделиться Опубликовано 9 Августа 2004 вот сама функция my_getcookie() как я понял это всего лишь его часть..Нет, всё ОК. Что здесь видим:1. Раз используется массив $INFO, значит, тебе надо будет сделать в начале твоего файла require('path/to/forum/conf_global.php');2. Собственно, всё. Можешь скопировать функцию my_getcookie() целиком в твой файл и использовать, например:$member_id = my_getcookie('member_id'); $pass_hash = my_getcookie('pass_hash'); if (! $member_id) echo "Вы не авторизованы";и т.д. и последнее, раз тема про интеграцию воспользуюсь моментом спросить какая замена символов у форума при регистрации переменной $name? т.е. имя при регистрации.Вот что есть в Register.php по теме:$in_username = trim( str_replace( '|', '|' , $ibforums->input['UserName'] ) ); $in_username = preg_replace( "/\s{2,}/", " ", $in_username );Вроде всё. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Heckfy Опубликовано 9 Августа 2004 Автор Жалоба Поделиться Опубликовано 9 Августа 2004 огромное спасибо, теперь все понятно, будем тестировать Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.