За последние 24 часа нас посетили 17757 программистов и 1703 робота. Сейчас ищут 950 программистов ...

Редирект

Тема в разделе "Сделайте за меня", создана пользователем dukesov, 11 дек 2015.

Статус темы:
Закрыта.
  1. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    Не надо так. Тут реально тебе хотят помочь. Не цепляйся за сообщения. Все будет ок. Ша твоя тема в нужном разделе.
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    header('Location: http://сайт.ru/pack/'.$_GET['link']);

    Добавлено спустя 55 секунд:
    я тебе тоже пытаюсь помочь и выправить мозги, но ты верещишь и держишься за старое, и не хочешь меняться. Он тоже не хочет делать над собой усилия. Это нормально. Никто никого не заставляет. =)
     
  3. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Код (PHP):
    1. if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome') !== false) {
    2.     $params = [];
    3.     parse_str($_SERVER['QUERY_STRING'], $params);
    4.     if (isset($params['link']) && is_numeric($params['link'])) {
    5.         echo "http://example.com/$params[link]";
    6.     }
    7. } 
     
  4. dukesov

    dukesov Новичок

    С нами с:
    29 авг 2015
    Сообщения:
    65
    Симпатии:
    0
    Код (PHP):
    1. $ref=$_SERVER['QUERY_STRING'];
    2. if ($ref!='') $ref='?'.$ref;
    3. if ( !stristr($_SERVER['HTTP_USER_AGENT'], 'USER_AGENT') ){
    4.     header('Location: http://сайт.ru/pack/'.$ref);
    5.     exit();
    6. }
    После редиректа получается: http://сайт.ru/pack/?link=3434
    Нужно получить: http://сайт.ru/pack/3434
    Кто поможет?

    Код (PHP):
    1. header('Location: http://сайт.ru/pack/'.$_GET['link']);
    Не работает.

    Код (PHP):
    1. if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome') !== false) {
    2.     $params = [];
    3.     parse_str($_SERVER['QUERY_STRING'], $params);
    4.     if (isset($params['link']) && is_numeric($params['link'])) {
    5.         echo "http://example.com/$params[link]";
    6.     }
    7. }
    Судя по всему то-же, ругается на $params.
    И мне нужно не echo, это же редирект.

    Прошлую тему непонятно почему закрыли...
     
  5. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    я в .htaccess прописал
    Код (PHP):
    1. RewriteEngine On
    2. RewriteRule ^([^.]+)$ index.php
    после уже остается получить содержимое переменной $_SERVER['REQUEST_URI'] ( в нашем случае там будет pack/3434) и реагировать соответствующим образом.

    Добавлено спустя 3 минуты 44 секунды:
    Я тоже не понял почему он это сделал. Может отпишется тут.
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    потому что заебал своей тупостью и нежеланием вникать в код и ещё жалуется при этом. Плати бабло. Решение дано. Если оно не работает - это никого не ебёт простите. Бесплатно же.
     
  7. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    dukesov kакая версия PHP у тебя?
     
  8. dukesov

    dukesov Новичок

    С нами с:
    29 авг 2015
    Сообщения:
    65
    Симпатии:
    0
    О, как, и это просите Модератор??? Знаете что, я бы на этот форум вообще не писал еслиб знал как и что...
    Я написал в соответствующую тему, Сделай за меня. Я отписался что эти коды не работают и я Вас заебал??? Да иди те ка Вы "Модератор" куда подальше...
     
  9. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    dukesov много нюансов из-за чего код будет работать у меня, но у тебя выдавать ошибки.
    По этому я и задаю уточняющие вопросы.
     
  10. dukesov

    dukesov Новичок

    С нами с:
    29 авг 2015
    Сообщения:
    65
    Симпатии:
    0
    denis01, 5.4
     
  11. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    Мне кажется весь топик нужно перенести в "обсуждение квалифицированности...". Этому там самое место, как наглядному примеру ) Не, серьезно, у мну смутное подозрение, что чувак просто вставляет кусок кода в файл, видит, что оно не работает и ждет нового куска.
     
  12. dukesov

    dukesov Новичок

    С нами с:
    29 авг 2015
    Сообщения:
    65
    Симпатии:
    0
    Тогда объясните мне для чего эта тема?
    Если тут сидят одни спецы так закройте форум, сделайте только для спецов. Теперь я понимаю почему так много сообщений те кто просто тупо пишут: иди туда, почитай это, подумай над этим и т.д. Я не программист и теперь что, меня унижать можно?
    Спасибо от души всем тем, кто мне реально помог! А кто просто отписал читай это, ребят, лучше вообще ничего не пишите, не набивайте себе сообщения что-б казатся крутым на форуме...
    Отдельное спасибо denis01, старался помочь.
    Все удачи, надеюсь больше я тут не появлюсь. И новеньким советую тут вообще ничего не писать, так как адекватных ребят тут 1%.
     
  13. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    dukesov, как ты решил проблему?
     
  14. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    dukesov, ты реально даун :D моё величество уже сказало что тебе надо сделать. у тебя есть ссылка /pack/1234 которую рерайтер переписывает в index.php?link=1234 и ты хочешь потом из скрипта получить обратно /pack/1234. и я предложил посмотреть на содержимое массива _SERVER. там есть ключ REQUEST_URI в котором хранится /pack/1234 то есть ссылка до рерайтера. оригинальная, девственная и непорочная. и её тебе достаточно вставить в хидер-локейшн и ничего более сочинять не надо. всё. точка. но ты вместо этого устроил срач на форуме. и еще не доволен чем-то. и сообщения зачем-то вытираешь. истеричка.
     
  15. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Человек-водород превратился в человека-гелия.
    И ты в него не входишь, увы. Чем истерить и выпиливать гневно свои посты, жалуясь на тех, чьи слова задели твое ЧСВ, лучше бы прислушался. Сам себя поставил так, се ля ви.
     
  16. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    о, я тут открыл список твоих сообщений - там полторы страницы delete-ов. мож тебя забанить чтоб ты ничего не писал? а то потом удалять время тратить. а так - вона сколько сэкономишь. и негатива в адрес своей несостоявшейся личности не придется читать. м?
     
  17. dukesov

    dukesov Новичок

    С нами с:
    29 авг 2015
    Сообщения:
    65
    Симпатии:
    0
    делай что хочешь... Просто ты даже сути вопроса не понял, а уже гонишь...
    Кто тебе сказал что у меня есть ссылка /pack/1234?
    У меня есть в корне "ссылка" index.php?link=3434
    Мне нужно сделать редирект только 1 user agent на "папку" /pack/index.php?link=3434.
    Что прекрасно делает "редирект" который я выше писал.
    Но, так как у меня уже прописано в папке pack в htaccess
    Код (PHP):
    1. RewriteEngine on
    2. RewriteCond %{REQUEST_FILENAME} !-f
    3. RewriteCond %{REQUEST_FILENAME} !-d
    4. RewriteRule ^(.*)$ index.php?link=$1
    Ссылка после редиректа нужна такого плана: /pack/3434.

    Да, в REQUEST_URI уже есть ссылка, но она index.php?link=3434

    И я не могу сделать точно такой же RewriteEngine в корне, по очень большой причине, кое что не может его прочесть, и выходят ошибки.
    Я бы уже давно так сделал...

    Как еще объяснить я не знаю...

    PHP, JavaScript, SQL и другой код пишите внутри тегов
    Код ( (Unknown Language)):
    1. [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
     
  18. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    мне никто ничего не сказал. я это выдумал на ходу. потому что ты стёр нахер все темы в которых хоть как-то пытался изложить суть своей проблемы. и теперь пытаешься по новой всё объяснить. ну давай для начала объясни мне что такое "в корне ссылка". а то я всего лишь гуру и мне сложно понимать продвинутый язык новичков.
     
  19. dukesov

    dukesov Новичок

    С нами с:
    29 авг 2015
    Сообщения:
    65
    Симпатии:
    0
    ты видел мое сообщение и изначально так начал писать.
    http://сайт.ru/index.php?link=3434
     
  20. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    dukesov можешь создать файл, например test.php

    Код (PHP):
    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4.     <meta charset="utf-8">
    5.     <title></title>
    6. </head>
    7. <body>
    8. <pre>
    9. <?php
    10. var_export(strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome') !== false);
    11. echo PHP_EOL;
    12. if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome') !== false) {
    13.     $params = array();
    14.     parse_str($_SERVER['QUERY_STRING'], $params);
    15.     echo PHP_EOL;
    16.     var_export($params);
    17.     echo PHP_EOL;
    18.     var_export(isset($params['link']));
    19.     echo PHP_EOL;
    20.     var_export(is_numeric($params['link']));
    21.     echo PHP_EOL;
    22.     var_export(isset($params['link']) && is_numeric($params['link']));
    23.     echo PHP_EOL;
    24.     if (isset($params['link']) && is_numeric($params['link'])) {
    25.         echo "http://example.com/$params[link]";
    26.     }
    27. }
    28. ?>
    29. </pre>
    30. </body>
    31. </html>
    И дать на него ссылку, чтобы мы посмотрели результат.
     
  21. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    и теперь контрольный вопрос - а в адресной строке как ссылка выглядит? по какой ссылке переходит посетитель чтоб по юа его перекинуло в подкаталог?
     
  22. dukesov

    dukesov Новичок

    С нами с:
    29 авг 2015
    Сообщения:
    65
    Симпатии:
    0
    http://сайт.ru/index.php?link=3434 так выглядит и по этой же ссылке переходит, но =3434 может быть другим, одно одинаково: http://сайт.ru/index.php?link=

    Добавлено спустя 5 минут 27 секунд:
    denis01, какая информация там нужна? я напишу сам.
     
  23. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Всю, можешь сделать копию страницы, например через расширения Full Page Screen Capture для Chrome, потри свои IP/домены и сервера, если это важно.
    Тогда запускай скрипт так: http://example.com/test.php?link=123 через Chrome.
     
  24. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    ну эт самое... делаем миллиард запросов к /index.php?link=(какое-нибудь число) и постоянно смотрим $_SERVER['REQUEST_URI'] - там всегда будет текущая ссылка хранится - /index.php?link=(какое-нибудь число). значит препендим её строкой '/pack' и делаем редирект. пхп кодом это будет выглядеть как
    Код (PHP):
    1. header('Location: /pack' . $_SERVER['REQUEST_URI']); exit;
    видишь как просто? ты больше сил на истерику потратил и больше времени на удаление постов. а ведь нужно было прислушаться ко мне и сразу взглянуть в содержимое суперглобального массива $_SERVER - там уже лежит то что можно легко и быстро использовать в решении твоей задачи.

    upd. тфу ты тварь рукожопая... лишний слэш убрал.
     
  25. dukesov

    dukesov Новичок

    С нами с:
    29 авг 2015
    Сообщения:
    65
    Симпатии:
    0
    Да, но это не то, и я уже так делал. Я опять же получаю ссылку: http://сайт.ru/pack/index.php?link=3434
    А необходима: http://сайт.ru/pack/3434
     
Статус темы:
Закрыта.