Randomizing HTML & shit

2 отговора 110 прегледа
#1

Randomizing HTML & shit

Здравейте,

трябва ми скрипт, който да показва рандомизирано 20 текста ( HTML-a от около 4000 всеки), като те да не се повтарят

ползвам ето това ( по-долу ), но много се бави, минават повече от 30 секунди
<?php

function dodosrandgen() {
// set number of links you want to show at once
$show_link = 5;
// separate the links by, i.e. comma would be ",";
$separator = " ";
// Add links
// Please make sure you number entries CORRECTLY
// Look at the example for reference!
// DO NOT erase the priority part, leave all
// to 1 if you don't want them to have different
// priorities!


$links[0][link] = "<a href=\"[линк]" target=\"_blank\" onMouseOver=\"window.status='randlink: daynah.net'; return true\" onMouseOut=\"window.status=''; return true\">x</a>";
$links[0][priority] = 1;
$links[1][link] = "<a href=\"[линк]" onMouseOver=\"window.status='randlink: lustre'; return true\" onMouseOut=\"window.status=''; return true\" target=\"_blank\">x</a>";
$links[1][priority] = 1;
$links[2][link] = "<a href=\"[линк]" onMouseOver=\"window.status='randlink: sweet-essence.net'; return true\" onMouseOut=\"window.status=''; return true\" target=\"_blank\">x</a>";
$links[2][priority] = 1;
$links[3][link] = "<a href=\"[линк]" onMouseOver=\"window.status='randlink: froggiez.com'; return true\" onMouseOut=\"window.status=''; return true\" target=\"_blank\">x</a>";
$links[3][priority] = 1;
$links[4][link] = "<a href=\"[линк]" onMouseOver=\"window.status='randlink: regretless.com'; return true\" onMouseOut=\"window.status=''; return true\" target=\"_blank\">x</a>";
$links[4][priority] = 2;
$links[5][link] = "<a href=\"[линк]" onMouseOver=\"window.status='randlink: DNW'; return true\" onMouseOut=\"window.status=''; return true\" target=\"_blank\">x</a>";
$links[5][priority] = 2;
$links[6][link] = "<a href=\"[линк]" onMouseOver=\"window.status='randlink: new millennium'; return true\" onMouseOut=\"window.status=''; return true\" target=\"_blank\">x</a>";
$links[6][priority] = 2;
$links[7][link] = "<a href=\"[линк]" onMouseOver=\"window.status='randlink: DMB'; return true\" onMouseOut=\"window.status=''; return true\" target=\"_blank\">x</a>";
$links[7][priority] = 8;

// HERE COMES THE BODY
if($links) {
for($i = -1; $i < count($links); $i++) {
for($j = 0; $j < $links[$i][priority]; $j++) {
$newlinksindex = count($newlinks) + 1;
$newlinks[$newlinksindex] = $links[$i][link];
}
}
} // end of if link exist

// debug
if($show_link >= count($newlinks))
$show_link = count($newlinks);

$showarray[0] = "";
$showindex = 0;
// Select a random element from the new array
do {
$randindex = rand(0, count($newlinks));
if(!in_array($newlinks[$randindex], $showarray) && $newlinks[$randindex] != "") {
$showarray[$showindex] = $newlinks[$randindex];
//print_r($showarray);
$showindex++;
}
}while(count($showarray) <= $show_link);

// finally print out
for($i = 0; $i < $show_link; $i++ ) {
if($show_link == 1 || (($i + 1) == $show_link))
print $showarray[$i];
else
print $showarray[$i].$separator;
}
//print_r($ranarray);
//print_r($links);
//print_r($newlinks);

} // end of the dodosrandgen function
?>


Та молбата ми е, някой ако е срещал бърз и надежден скрипт, разбъркващ HTML и поднасящ ги без повторения, моля да сподели

Отговор
в отговор на Fuckedup #2

Re: Randomizing HTML &amp; shit

Трудно ли ти е да си го напишеш сам?


<?

$show_link = "5";
$separator = " | ";

$links[] = "<a href=\"[линк]">Google</a>";
$links[] = "<a href=\"[линк]">Yahoo</a>";
$links[] = "<a href=\"[линк]">Altavista</a>";
$links[] = "<a href=\"[линк]">DIR</a>";
$links[] = "<a href=\"[линк]">Search</a>";
$links[] = "<a href=\"[линк]">HIT</a>";
$links[] = "<a href=\"[линк]">MSN</a>";
$links[] = "<a href=\"[линк]">Zend</a>";
$links[] = "<a href=\"[линк]">PHP Builder</a>";
$links[] = "<a href=\"[линк]">PHP</a>";

if(!empty($links))
{
$keys = array_rand($links, $show_link);

while(list(,$v) = each($keys))
{
$show[] = $links[$v];
}

$my_links = implode($separator, $show);

echo $my_links;

}

?>


Отговор
в отговор на $burov #3

Re: Randomizing HTML &amp; shit

Благодаря ти за скрипта.
Не съм PHP програмист и съответно ми е трудно. Нещо странно ли има в това ?

Отговор