0
私はもともと、一度開いたライトボックスを持っていただけで、リストにあったデータベースからすべてのブランドを取り出しました。問題はこのリストがかなり長いため、ブランドを10個のリストに分けて残りの部分をフロートさせて、約40個のブランドがあるのでライトボックスを垂直方向ではなく水平方向に塗りつぶしたからです。複数のクエリを使わずにデータベースに動的にオフセットとリミットを達成する最善の方法?
私のコードの最初の問題は、私のコードがそれらを考慮していないので、突然別の10のブランドがデータベースに追加された場合にはカバーしないということです。
他の問題は、私は誰もがもう少し優雅さと効率性を下記のをどのように達成するかについての指針を提供することができれば、私は思っていたので、自分が複数のクエリを使用したとうんざりと感じていることです:
$sql2 = "SELECT page_id, name, url
FROM " . DBTABLE_SITEMAP ."
WHERE parent_id=$frames
AND isActive=1
AND isDeleted=0
ORDER BY position ASC
LIMIT 10";
$result2 = mysql_query($sql2, $db_conn);
if (mysql_num_rows($result2) > 0) {
echo '<ol class="subnav-glasses">';
while ($myrow2 = mysql_fetch_array($result2)) {
$this_sub_page_id = $myrow2["page_id"];
$this_sub_name = htmlentities($myrow2["name"]);
$this_sub_url = $myrow2["url"];
echo "\n<li><a href=\"$this_sub_url\" title=\"$this_sub_name\">$this_sub_name</a>";
echo '</li>';
}
echo "</ol>";
}
$sql3 = "SELECT page_id, name, url
FROM " . DBTABLE_SITEMAP ."
WHERE parent_id=$sitemap_designer_frames
AND isActive=1
AND isDeleted=0
ORDER BY position ASC
LIMIT 10
OFFSET 10";
$result3 = mysql_query($sql3, $db_conn);
if (mysql_num_rows($result3) > 0) {
echo '<ol class="subnav-glasses">';
while ($myrow3 = mysql_fetch_array($result3)) {
$this_sub_page_id = $myrow3["page_id"];
$this_sub_name = htmlentities($myrow3["name"]);
$this_sub_url = $myrow3["url"];
echo "\n<li><a href=\"$this_sub_url\" title=\"$this_sub_name\">$this_sub_name</a>";
echo '</li>';
}
echo "</ol>";
}
$sql4 = "SELECT page_id, name, url
FROM " . DBTABLE_SITEMAP ."
WHERE parent_id=$sitemap_designer_frames
AND isActive=1
AND isDeleted=0
ORDER BY position ASC
LIMIT 10
OFFSET 20";
$result4 = mysql_query($sql4, $db_conn);
if (mysql_num_rows($result4) > 0) {
echo '<ol class="subnav-glasses">';
while ($myrow4 = mysql_fetch_array($result4)) {
$this_sub_page_id = $myrow4["page_id"];
$this_sub_name = htmlentities($myrow4["name"]);
$this_sub_url = $myrow4["url"];
echo "\n<li><a href=\"$this_sub_url\" title=\"$this_sub_name\">$this_sub_name</a>";
echo '</li>';
}
echo "</ol>";
}
$sql5 = "SELECT page_id, name, url
FROM " . DBTABLE_SITEMAP ."
WHERE parent_id=$sitemap_designer_frames
AND isActive=1
AND isDeleted=0
ORDER BY position ASC
LIMIT 10
OFFSET 30";
$result5 = mysql_query($sql5, $db_conn);
if (mysql_num_rows($result5) > 0) {
echo '<ol class="subnav-glasses">';
while ($myrow5 = mysql_fetch_array($result5)) {
$this_sub_page_id = $myrow5["page_id"];
$this_sub_name = htmlentities($myrow5["name"]);
$this_sub_url = $myrow5["url"];
echo "\n<li><a href=\"$this_sub_url\" title=\"$this_sub_name\">$this_sub_name</a>";
echo '</li>';
}
echo "</ol>";
}
おかげで、それはほとんどそこだではなく、非常に - ここにHTML出力Iは取得しています:http://jsfiddle.net/3mqKP/1/ – martincarlin87
はそれが動作するようになった、完璧な、ありがとう! – martincarlin87