צפיות
תשובות
חלוקת תוכן לדפים ב-ASP
שלום,
יש לי טבלה ממנה אני שולף תמונות (לינק לתמונות) ואני מסדרת אותה בשורות של 3 בעזרת הקוד הבא:
<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("*.mdb"))
set re=Server.CreateObject("ADODB.recordset")
re.open "select * from *;",conn,3,1
Response.write "<table width=680 dir=rtl cellspacing=10 align=center id=t1><tr>"
dim loopCounter
loopCounter = 0
do while not re.EOF
Response.write "<td ><a href=javascript:openLink("& re.fields(0) &")><img border=0 src=../gla/"& re.fields(0) &".jpg onmouseout=low(this) onmouseover=high(this) style='FILTER: alpha(opacity=70)'><br><center><font size=2>2004: "& re.fields(2) &" ש"ח</font><br><font size=1>להזמנה לחץ</font></a></center></td>"
loopCounter = loopCounter +1
if loopCounter mod 3 = 0 then
Response.write "</tr><tr>"
end if
re.MoveNext
loop
conn.close
%></table>
הבעיה שלי שיש לי הרבה פריטים (כמעט 150) וזה לא יעיל להציג הכל בבת אחת.
חיפשתי כאן בפורום איזושהי דרך לחלק את המידע לדפים אבל לא הצלחתי למצוא.
חשוב לי לציין שאני רוצה חלוקה לדפים עם מבנה של 3 תמונות בשורה.
למישהו יש מושג איך אני יכול לשלב קוד לחלוקה בקוד הנ"ל או לחילופין קוד לחלוקה שמציג 3 תמונות בשורה ?
תודה מראש,
רוני.
7 תשובות
יש מאמר באתר הזה
לינק:
https://www.webmaster.org.il/showArticle.asp?id=17
זו הדרך הכי לא יעילה שאני מכיר…
עדיף פשוט לכתוב פונקציה שתחלק את זה לדפים…
הדרך הזאת דורשת שהסמן יהיה דינמי כשאפשר לעשות את זה ב FORWARD ONLY….
תעשה חלוקה ברמת ה SQL
הכי נכון. היא שולפת רק את הרשומות שהיא צריכה להציג…
בשיטה הרגילה היא שולפת את נגיד 100 רשומות ומציגה 10
ברמת ה SQL היא שולפת רק את ה 10, יותר נכון ויותר מהיר.
אבל…
ניראה לי שלשלוף רק מה שצריך אפשרי רק אם תשתמש ב ID… תקן אותי אם אני טועה..
ID זה דרך לא בטוחה כי אם מחקת הID לא "מתאפס" הוא ממשיך… זתומרת שיכולות להווצר טעויות…
(ממש) לא תמיד נכון
חלוקה לעמודים ברמת ה SQL אמנם תיהיה יעילה על מספר קטן של רשומות, אבל להריץ שאילתות פנימיות על אלפי רשומות זה כבר מאד לא יעיל.
[אלא אם כן זה ב SP נורמלי, כמובן]
אוקי אז תלוי כבר באיזה סדר גודל…
האתר שלו…