Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.03.2016, 18:00   #1
djtimoha
 
Регистрация: 10.03.2016
Сообщений: 4
По умолчанию Чтение базы MySql и сравнения с HTTP_REFERER

Пиши такой код для контроля HTTP_REFERER от куда приходят.
Работает хорошо.

Вопрос в том как сделать мне чтоб сайты ботов (гугл,яндекс и т.д.) читались из базы MySql?

PHP код:
$userstable "ref";

$ref $_SERVER['HTTP_REFERER'];

if (!empty(
$ref) && strpos($_SERVER["HTTP_REFERER"],"http://google.ru")===false && strpos($_SERVER["HTTP_REFERER"],"http://www.google.ru")===false && strpos($_SERVER["HTTP_REFERER"],"http://google.com")===false && strpos($_SERVER["HTTP_REFERER"],"http://www.google.com")===false && strpos($_SERVER["HTTP_REFERER"],"https://google.ru")===false && strpos($_SERVER["HTTP_REFERER"],"https://www.google.ru")===false && strpos($_SERVER["HTTP_REFERER"],"http://yandex.ru")===false && strpos($_SERVER["HTTP_REFERER"],"http://www.yandex.ru")===false) {

$query "select * from $userstable where usera = '$ref'";
$result mysql_query($query); 
$rows mysql_num_rows($result);

if (
$rows == 0){ 
$kol "1"

$query1 "nsert into $userstable (usera,date,kol) values('$ref','$timka','$kol')";
mysql_query($query1);

} else {

$hitquery "select kol from $userstable where usera = '$ref'";
$result2 mysql_query($hitquery);
$row mysql_fetch_array($result2); 
$kol $row["kol"];

$query2 "update $userstable set kol = kol+1, date = '$timka' where usera = '$ref'";
mysql_query($query2);
}




Код самой базы из которой хотелось бы читать URL сайтов:

PHP код:
$req mysql_query("SELECT * FROM `refbad`"); 
while (
$res mysql_fetch_assoc($req)) 

// echo 'URL='.$res['url']; 






Хотел сделать что то типа так:

PHP код:
$req mysql_query("SELECT * FROM `refbad`");

while (
$res mysql_fetch_assoc($req)) {

if (!empty(
$ref) && strpos($_SERVER["HTTP_REFERER"],$res['url'])===false) { echo 'В списке REFBAD'; }


Но что то не получается
djtimoha вне форума Ответить с цитированием
Старый 10.03.2016, 18:28   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
сделать мне чтоб сайты ботов (гугл,яндекс и т.д.) читались из базы MySql?
Это как? Что и зачем вы хотите?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 10.03.2016, 21:02   #3
djtimoha
 
Регистрация: 10.03.2016
Сообщений: 4
По умолчанию

у меня:
PHP код:
if (!empty($ref) && strpos($_SERVER["HTTP_REFERER"],"http://google.ru")===false && strpos($_SERVER["HTTP_REFERER"],"http://www.google.ru")===false && strpos($_SERVER["HTTP_REFERER"],"http://google.com")===false && strpos($_SERVER["HTTP_REFERER"],"http://www.google.com")===false && strpos($_SERVER["HTTP_REFERER"],"https://google.ru")===false && strpos($_SERVER["HTTP_REFERER"],"https://www.google.ru")===false && strpos($_SERVER["HTTP_REFERER"],"http://yandex.ru")===false && strpos($_SERVER["HTTP_REFERER"],"http://www.yandex.ru")===false) { 
Чтоб не отсюда брались адреса, а из базы брались. Я хочу адреса добавлять через админку
djtimoha вне форума Ответить с цитированием
Старый 11.03.2016, 00:31   #4
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Проверяй, что у тебя в $_SERVER["HTTP_REFERER"], и почему сравнение возвращает не ожидаемый результат.
Andkorol вне форума Ответить с цитированием
Старый 11.03.2016, 13:05   #5
djtimoha
 
Регистрация: 10.03.2016
Сообщений: 4
По умолчанию

Я хочу переписать самый верхний код пхп в первом посте.
Там все работает хорошо. Мне нужно чтоб адреса игнорных сайтов читались из базы `refbad` и не вписывались или переписывались в другую базу `ref`. А вот как это сделать ума не хватает. Три месяца мучаюсь с этой проблемой. Пробовал всяко разно. Помогите плиз
djtimoha вне форума Ответить с цитированием
Старый 11.03.2016, 13:11   #6
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну создайте таблицу, добавьте в нее нужные записи и доставайте SELECT'ом. Что-то так и не понял в чем проблема.
Цитата:
Три месяца мучаюсь с этой проблемой
За 3 месяца не осилили прочитать учебник/документацию по PHP и БД/SQL?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 11.03.2016, 13:20   #7
djtimoha
 
Регистрация: 10.03.2016
Сообщений: 4
По умолчанию

Я пробовал написать
PHP код:
$req mysql_query("SELECT * FROM `refbad`"); 

while (
$res mysql_fetch_assoc($req)) { 

if (!empty(
$ref) && strpos($_SERVER["HTTP_REFERER"],$res['url'])===false) { echo 'В списке REFBAD'; } 


я почему хочу переписать самый верхний код, т.к. в нём добавляются новые REFERER и при их наличии переписываются update.
И эту станицу в которой REFERER я ссылаюсь на неё с помощью include ("referer.php");

c БД/SQL я дружу. Правда пишу всё на гомнокодах)))
djtimoha вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чтение из базы с фильтром Evil_Net БД в Delphi 9 31.08.2015 09:46
Ускорить чтение из базы ZBEP БД в Delphi 11 27.03.2014 23:02
Чтение данных из базы Access из ресурса Аватар БД в Delphi 9 27.06.2013 16:42
Чтение из базы Антон Шестаков БД в Delphi 8 18.05.2007 19:24