【问题标题】:How can I randomize links in tag cloud area when page is refreshed?刷新页面时如何随机化标签云区域中的链接?
【发布时间】:2011-12-15 17:16:48
【问题描述】:

代码运行正常,但我仍然想在页面刷新时生成随机结果。现在代码给了我结果,例如链接 n.1,2,3,4,5... 我不希望它们是随机的,例如没有。 3,9,1,...

这里是代码:

<?php


function print_cloud()
{ global $use_ads_scrl; $res=""; if ($use_ads_scrl=="yes"){$res=print_cloud2();}  return $res; }

function print_cloud2()
{

global $table_ads, $HTTP_GET_VARS;

$city_sch="";
if ($HTTP_GET_VARS['city']!=""){$city_sch="and city='".$HTTP_GET_VARS['city']."' ";}

$sql_query="select * from $table_ads where (adcommkey is null or adcommkey=0) and visible=1 $city_sch
order by idnum desc limit 10";

$sql_res=mysql_query("$sql_query");

$min = '8'; // Minimum font size in pixel.
$max = '22'; // Maximum font size in pixel.
$decor = 'text-decoration:none;font-weight:100;'; // Inline CSS per link.

$k1=""; $html_res="";
while ($row = mysql_fetch_array($sql_res)){
$k1="1";
if($row['adphotos']=='yes'){$check_ph=$photo_mark;} else {$check_ph="";}

$html_res=$html_res."
<a style=' ".$decor." font-size:".rand($min,$max)."px; font-family:tahoma,sans-serif; color:#3B5998;'    href='index.php?md=details&id= ".$row['idnum']." '> ".$row['title']." </a> 
";


}

$html_res="
$html_res
";

if ($k1==""){$html_res="";}

return $html_res;
}

?>

【问题讨论】:

    标签: php tag-cloud


    【解决方案1】:

    改变

    order by idnum desc limit 10
    

    order by RAND() limit 10
    

    这将从您的表中返回 10 个随机结果。

    编辑:要从最近的 X 个条目中返回随机结果,您可以尝试使用子查询返回最近的 10 个结果,然后对该查询的结果进行随机排序。

    SELECT *
    FROM (SELECT * FROM $table_ads
          WHERE (adcommkey is null or adcommkey=0)
          AND visible=1
          ORDER BY idnum DESC LIMIT 10) `recent`
    ORDER BY RAND()
    

    【讨论】:

    • 日本人,已经这样做了,但是你没有得到最后 10 个添加的链接,而是从所有数据库中随机获取 :( 我想从最后 10 个添加的链接中随机获取,所以你可以说随机来自那天的新闻。
    • 谢谢你,就像魅力一样 :)
    猜你喜欢
    • 2012-06-06
    • 2011-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多