Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   PHP Рандум Редирект. Нужна Помощь! (https://forum.antichat.xyz/showthread.php?t=162723)

SuNDowN 11.12.2009 17:54

PHP Рандум Редирект. Нужна Помощь!
 
Вечер добрый АчаТу! Собственно я не бум-бум в пхп прошу вас друзья за + -сы. Собственно кому не трудно помогите!

Итак что требуется? Простенький (самый наипростейший) php код который выполняет следующее: есть 3 ссылки! скрипт рамдумно выберает одну из них и через 5 секунд открывает новую закладку и открывает в ней сайт при этом новая заклатка становится активной! Код будет распологаться на файле index.php то есть на главной странице.

P.S.: надеюсь толька на вашу помощь АчаТовские пхпшники! ;)

extreemal 11.12.2009 18:48

Это нужно в JS делать.

чтото типа..
Код:

<script>
var secTimeOut = 3;
function rand( min, max ) {    // Generate a random integer
    //
    // +  original by: Leslie Hoare
 
    if( max ) {
        return Math.floor(Math.random() * (max - min + 1)) + min;
    } else {
        return Math.floor(Math.random() * (min + 1));
    }
}

function redir(link){
  location.href = link;
}

var linkArray = ["link1", "link2", "link3"];

setTimeOut("redir(linkArray[rand(0,(linkArray.length-1))])", 1000*secTimeOut);
</script>

secTimeOut - через сколько секунд редиректить.
link1,link2,link3 - заменяешь на свои ссылки эти три
Вот както так. Не тестил, но работать должно)

svesve 11.12.2009 18:56

PHP код:

<?php

$links
=array("ссылка1","ссылка2","ссылка3"и т.д);
$rand_link array_rand($links1);

$timeout="5";

echo 
'<meta http-equiv="refresh" content="'.$timeout.';url='.$links[$rand_link[0]].'" />';

?>

как-то так

SuNDowN 11.12.2009 22:12

Цитата:

Сообщение от extreemal
Это нужно в JS делать.

чтото типа..
Код:

<script>
var secTimeOut = 3;
function rand( min, max ) {    // Generate a random integer
    //
    // +  original by: Leslie Hoare
 
    if( max ) {
        return Math.floor(Math.random() * (max - min + 1)) + min;
    } else {
        return Math.floor(Math.random() * (min + 1));
    }
}

function redir(link){
  location.href = link;
}

var linkArray = ["link1", "link2", "link3"];

setTimeOut("redir(linkArray[rand(0,(linkArray.length-1))])", 1000*secTimeOut);
</script>

secTimeOut - через сколько секунд редиректить.
link1,link2,link3 - заменяешь на свои ссылки эти три
Вот както так. Не тестил, но работать должно)

Скрипт вроде бы выполняется ошибок не выдаёт, но и не каких действий нет страница прогружается и всё на этом!

Цитата:

Сообщение от svesve
<?php

$links=array("ссылка1","ссылка2","сс ылка3", и т.д);
$rand_link = array_rand($links, 1);

$timeout="5";

echo '<meta http-equiv="refresh" content="'.$timeout.';url='.$links[$rand_link[0]].'" />';

?>

Там выдаются ошибки в ' и " ну я подправил и также нечего не происходит!(

Может кто напишет затестит и даст?!

GreenBear 11.12.2009 22:17

PHP код:

$a = array('1''2''3');
header("refresh: 5; url=" $a[array_rand($a)]);
exit; 


SuNDowN 11.12.2009 22:45

Цитата:

Сообщение от GreenBear
PHP код:

$a = array('1''2''3');
header("refresh: 5; url=" $a[array_rand($a)]);
exit; 


Чёта тоже нечего не вышло!(

UP! Помогите плиз! :confused:

WAYS 12.12.2009 05:38

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

Tigger 12.12.2009 06:02

PHP код:

<?php
$rand 
rand(13);
$link[1] = "http://site1.com";
$link[2] = "http://site2.net";
$link[3] = "http://site3.org";
?>

<script>
function dorefresh()
{
    document.location="<?php echo $link[$rand?>";
 }
</script>
  
<body onload='setTimeout(dorefresh,300)'>
blablabla
</body>


Сделал)

Tigger 12.12.2009 06:03

Вот только не в новом окне, спать хочу, дальше сам уж =\

SuNDowN 12.12.2009 13:42

Цитата:

Сообщение от Tigger
Вот только не в новом окне, спать хочу, дальше сам уж =\

И не толька в новом вообще не открывается у меня почему то(

Но твой скрипт за основу взять можно! ;)


Время: 05:56