Оно то открывается но там какая то каша и кодировка непонятная, .... хотя. может я плохо знаю курл......
Если подставить заголовки как у настоящего браузера, то все должно нормально передаваться(если не ошибаюсь, я его вообще без заголовков парсил и ниче, ip, который меня интересовал, был на своем месте).
в file_get_contents можно прописать и User agent. это не проблема, там так же прописываются заголовки , $opts = array( 'http'=>array( 'method'=>"GET", 'header'=>"Accept-language: en\r\n" . "Cookie: foo=bar\r\n" ) ); $context = stream_context_create($opts); file_get_contents('http://test.ru', false, $context); по вопросу я бы защиту строил по другому, считал количество открываний с одного ип адреса , так как если написали грабер то по любому ип будет постоянно один, но есть вариант что будут строить запросы через прокси, это уже проблематичней, но тоже есть вариант как вычислять прокси или реальный ип адрес если прокси не анонимны, вообщем универсального тут не придумаешь
Ставить кукисы js-om js само собой должен быть предварительно обсуфицирован, это не самая лучшая засчита, но большинство новичков остановит. Особенно если кукисы помимо какого-то своего алгоритма, будут хэшироваться и засчет элементов dom на стр, и часть js будет передаваться через php скрипт, например та которая в dom пропишет нужные элементы, сталкивался с такой засчитой и несколько людей не смогли понять что к чему.
file_get_contents остановить можно. Куки+исключения юзер агента + проверка рефера. Но при более тонком подходе, тот же курл и все напрасно.
мой вопрос удалили по не понятным причинам, спрашиваю еще раз.. подскажите как сделать так, чтобы при переходе на фейк страницу в value поля логина вставлялся логин автоматически.
это я и так знаю, но неужели нельзя вставить php код в фейк страницу и чтобы он сработал при переходе на нее и логин вставился в валуе?
Пишу механизм авторизации. Есть ли какие-то стандартные механизмы, чтобы продлить жизнь идентификатора сесси, который хранится в куках? Объясняю: если вызывать стандартно session_start(); - то кука получается одноразовой и живёт ровно до тех пор, пока юзер не закрыл браузер. Так вот, как мне повлиять на параметр Expire, чтобы сессия могла пожить скажем неделю?
.htaccess: Code: php_value session.gc_maxlifetime 604800 php_value session.cookie_lifetime 604800 php: PHP: session_set_cookie_params(604800);
Есть вот такая функция: PHP: function test(){ echo 'OK'; } Как получить текст из echo в строку, но без вывода на экран?
daniel777, что значит получить текст в строку? Может это имелось в виду? PHP: <?php function test(){ echo 'OK'; } ob_start(); test(); $out = ob_get_contents(); ob_end_clean(); var_dump($out);
есть скрипт модуля, он вызывается через include как сделать определение - вызывается сейчас модуль в include либо его открыли напрямую через браузер т.е. если его вызвали через include должно выводится true, если нет то false
index.php PHP: <?php define('YARR', True); include 'include.php'; include.php PHP: <?php if ( defined('YARR') ) echo 'index'; else echo 'open';
Курл на отрез отказывается посылать хедеры. И после нескольких запросов, гугл начинает просить ввести капчу. Помогите пожалуйста. PHP: $headers = array( 'Host: google.com', 'Referer: https://www.google.com/', 'User-agent: Mozilla/5.0 (Windows NT 5.1; rv:16.0) Gecko/16.0 Firefox/13.0' ); function set_curl($query, $head) { $url = 'http://www.google.ru/search?hl=ru&num=100&start=0&lr=&q='.urlencode(trim($query)); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, $head); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0); $res = curl_exec($ch); echo $res; } set_curl($query, $headers); ?>