PDA

Просмотр полной версии : PHP Рандум Редирект. Нужна Помощь!


SuNDowN
11.12.2009, 17:54
Вечер добрый АчаТу! Собственно я не бум-бум в пхп прошу вас друзья за + -сы. Собственно кому не трудно помогите!

Итак что требуется? Простенький (самый наипростейший) 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

$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]].'" />';

?>


как-то так

SuNDowN
11.12.2009, 22:12
Это нужно в 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 - заменяешь на свои ссылки эти три
Вот както так. Не тестил, но работать должно)
Скрипт вроде бы выполняется ошибок не выдаёт, но и не каких действий нет страница прогружается и всё на этом!


<?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
$a = array('1', '2', '3');
header("refresh: 5; url=" . $a[array_rand($a)]);
exit;

SuNDowN
11.12.2009, 22:45
$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
$rand = rand(1, 3);
$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
Вот только не в новом окне, спать хочу, дальше сам уж =\
И не толька в новом вообще не открывается у меня почему то(

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

Player#1
12.12.2009, 20:23
странно, что у тебя ниче не работает... мб ты php забыл поставить
:LOL:

SuNDowN
12.12.2009, 20:36
странно, что у тебя ниче не работает... мб ты php забыл поставить
:LOL:
оч смешно! =)