0

コードは正常に動作していますが、ページの更新時にランダムな結果を出したいです。今、コードは私にリンク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;
}

?>
4

1 に答える 1

0

変化する

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()
于 2011-12-15T17:22:16.283 に答える