Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Как показать капчу нежелательному посетителю?
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 920
Пользователь №: 27293
На форуме: 5 лет, 8 месяцев, 2 дня
Карма: -1




Если на страницу пришел посетитель, в отношении которого есть подозрение, что это нежелательный робот, то такому посетителю необходимо предложить ответить на вопросы капчи.

Предполагается так:
- даем отклик 403;
- перенаправляем на страницу с капчей.

Для этого используется такой код:
header("Location: /control/captcha.php?url=". $url, true, 403 );
exit;
(Здесь в $url адрес страницы, на которую посетитель пришел)

Если для тестирования произвести скачивание страниц с помощью тестового скрипта, открывающего сайт функцией file_get_contents, то можно убедиться, что все так и происходит - функция получает код страницы с капчей.

Но если открывать браузером, то редиректа не происходит и мы видим просто пустую страницу (код на странице отсутствует).

Как можно предположить, отклик 403 и редирект для браузера несовместимы.

Как же решить эту проблему и корректно выполнить редирект?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Медведь  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 2482
Пользователь №: 37963
На форуме: 3 года, 3 месяца, 29 дней
Карма: 27




К чему такие сложности? По каким критериям определяется нежелательность пользователя, и зачем пляски с бубном, заместо контента отдавай капчу, после успешной проверки - контент.


--------------------

Заходил 29.09.2016
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 920
Пользователь №: 27293
На форуме: 5 лет, 8 месяцев, 2 дня
Карма: -1




При неудачном ответе на капчу ее нужно повторять. А это значит, что все равно требуется отдельный файл работы с капчей. Так что проще всего было бы переходить на него с самого начала.

Но если это невозможно, то придется воспользоваться Вашим советом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Медведь  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 2482
Пользователь №: 37963
На форуме: 3 года, 3 месяца, 29 дней
Карма: 27




Сделай отдельный файл, да подключай его. И какая разница сколько раз ввёл неправильно, сделай лимит, после чего сообщение - лимит превышен, попробуйте позже.


--------------------

Заходил 29.09.2016
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 920
Пользователь №: 27293
На форуме: 5 лет, 8 месяцев, 2 дня
Карма: -1




Не катит.

Если файл используется самостоятельно, то в нем нужен код подключения базы.

А если его инклудить, то в том файле, к которому делается инклуд, база уже вызвана.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
FatCat  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Чеширский кот
******

Профиль
Журнал
Группа: Администратор
Почтальон группы
Сообщений: 5911
Пользователь №: 1
На форуме: 10 лет, 10 месяцев, 3 дня
Карма: 125

Не пью :
22 года, 3 месяца, 3 дня


Селектор.
Если посетитель желательный, показ контента.
Если нежелательный - инклюд файла показа капчи.


--------------------
Бесплатному сыру в дырки не заглядывают...
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Медведь  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 2482
Пользователь №: 37963
На форуме: 3 года, 3 месяца, 29 дней
Карма: 27




Цитата (Владимир55 @ 2.04.2016 - 13:07)
в нем нужен код подключения базы.

к которому делается инклуд, база уже вызвана.

Ты чё прикалываешься?


--------------------

Заходил 29.09.2016
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 920
Пользователь №: 27293
На форуме: 5 лет, 8 месяцев, 2 дня
Карма: -1




Цитата (Медведь @ 2.04.2016 - 09:16)
Цитата (Владимир55 @ 2.04.2016 - 13:07)
в нем нужен код подключения базы.

к которому делается инклуд, база уже вызвана.

Ты чё прикалываешься?

Какой же тут прикол?

А файле обработки капчи стоит подключение к базе
include ("db-config.php") ;


А если я проинклудю его в файл выдачи контента страницы, так там база уже вызвана и получается ошибка.

В тоже время, файл обслуживания капчи может использоваться самостоятельно, поэтому код подключение к базе в нем необходим.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 920
Пользователь №: 27293
На форуме: 5 лет, 8 месяцев, 2 дня
Карма: -1




Получается, что нужно как-то узнать, что соединение с базой уже произошло.

Не удается найти подходящую функцию.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 920
Пользователь №: 27293
На форуме: 5 лет, 8 месяцев, 2 дня
Карма: -1




Нужна функци, которая вернула бы true если есть соединение с базой и false в противном случае.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 25994
Пользователь №: 21350
На форуме: 6 лет, 8 месяцев, 26 дней
Карма: 725

Не курю:
1 год, 2 месяца, 12 дней


всё очень просто


if(посетитель желательный){
echo 'Вот тебе контент';
}
else{
echo 'вот тебе форма с капчей';
}


Цитата
Нужна функци, которая вернула бы true если есть соединение с базой и false в противном случае.



привет инопланетянам

<?php
function
YesNoConnection($conn){
return $conn->connect_error ? false : true;
}

$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');

//Проверяем
$test = YesNoConnection($mysqli);

var_dump($test);


а если серъёзно:
когда же вы хернёй перестанете заниматься?
ну не можете простой алгоритм спроектировать - не тратьте время, займитесь чем-нить другим


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 920
Пользователь №: 27293
На форуме: 5 лет, 8 месяцев, 2 дня
Карма: -1




Цитата (Игорь_Vasinsky @ 2.04.2016 - 09:41)
всё очень просто
если серъёзно:
когда же вы хернёй перестанете заниматься?
ну не можете простой алгоритм спроектировать - не тратьте время, займитесь чем-нить другим

Спасибо, все так оно и сделано. Но принцип YesNoConnection по некоторым причинам плохо подходит.
Теперь найдено несколько иное решение.

P.S. Если Вы не против, то я всё же продолжу заниматься своим делом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 25994
Пользователь №: 21350
На форуме: 6 лет, 8 месяцев, 26 дней
Карма: 725

Не курю:
1 год, 2 месяца, 12 дней


Цитата
P.S. Если Вы не против, то я всё же продолжу заниматься своим делом.

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


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Владимир55  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Любопытный
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 920
Пользователь №: 27293
На форуме: 5 лет, 8 месяцев, 2 дня
Карма: -1




Я Вам не конкурент. Это совершенно точно.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

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

Опции темы Ответ в темуСоздание новой темыСоздание опроса