Помогите с хитрым редиректом!

Тема в разделе "JavaScript", создана пользователем dverik, 13 дек 2014.

Модераторы: ZiX
  1. dverik

    dverik Создатель

    Регистр.:
    9 апр 2013
    Сообщения:
    27
    Симпатии:
    15
    Ребят помогите пожалуйста со скриптом.

    Нужен редирект с сайта на другой сайт , но по случайному времени от 0 -до 70 секунд.
    Те каждый пользователь редиректится случайно.

    А если у кого есть вариант редиректа только нового посетителя по кукам да еще и в случайном промежутке времени вообще здорово!!:)
     
  2. Q_BASIC

    Q_BASIC

    Регистр.:
    30 ноя 2013
    Сообщения:
    381
    Симпатии:
    236
    Это на PHP
    PHP:
    if(empty($_COOKIE['redirected'])){
        if(
    rand(1,2)===2){ // шанс редиректа 50%
            
    setcookie('redirected''true'time()+9999999999);
            
    header('Location: http://example.com/');
            die();
        }
    }
     
    dverik нравится это.
  3. Gregurco

    Gregurco Создатель

    Регистр.:
    8 дек 2014
    Сообщения:
    16
    Симпатии:
    1
    dverik нравится это.
  4. Q_BASIC

    Q_BASIC

    Регистр.:
    30 ноя 2013
    Сообщения:
    381
    Симпатии:
    236
    HTML:
    <script>
    function getCookie(name) {
      var matches = document.cookie.match(new RegExp(
        "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
      ));
      return matches ? decodeURIComponent(matches[1]) : 'false';
    }
    function setCookie(name, value, options) {
      options = options || {};
    
      var expires = options.expires;
    
      if (typeof expires == "number" && expires) {
        var d = new Date();
        d.setTime(d.getTime() + expires*1000);
        expires = options.expires = d;
      }
      if (expires && expires.toUTCString) {
          options.expires = expires.toUTCString();
      }
    
      value = encodeURIComponent(value);
    
      var updatedCookie = name + "=" + value;
    
      for(var propName in options) {
        updatedCookie += "; " + propName;
        var propValue = options[propName]; 
        if (propValue !== true) {
          updatedCookie += "=" + propValue;
         }
      }
    
      document.cookie = updatedCookie;
    }
    
    
    var min = 1, max = 2;
    var rand = min - 0.5 + Math.random()*(max-min+1)
    rand = Math.round(rand);
    
    var min2 = 10, max2 = 70;
    var rand2 = min2 - 0.5 + Math.random()*(max2-min2+1)
    rand2 = Math.round(rand2);
    
    if(getCookie('redirected')=='false'){
        if(rand==2){
            setTimeout(function(){
                        setCookie('redirected', 'true', 9999999999);
                        window.location="http://example.com/";
            }, rand2);
        }
    }
    </script>
     
    dverik нравится это.
  5. dverik

    dverik Создатель

    Регистр.:
    9 апр 2013
    Сообщения:
    27
    Симпатии:
    15
    Спасибо большое ребят! Счас буду испытывать!!:)