הצגת תכנים באופן אקראי באמצעות האובייקט Content Rotator

‏ • 31 בינואר, 2004


הרבה פעמים אנחנו מעוניים להציג בדפי האתר קודי HTML שונים באופן רנדומאלי. לדוגמא, כדי לבנות מערכת באנרים פשוטה, אנחנו חייבים להציג בדף כל פעם באנר אחר.

האובייקט ContentRotator מאפשר לנו להציג אלמנטים באופן ראנדומאלי (אקראי), בלי שנצטרך לבצע פעולות מיוחדות לשם כך. בכל פעם שהמשתמש נכנס לדף או מרענן אותו הוא יקבל נתון אחר (פרסומות,טקסטים, תמונות וכדומה).

יצירת האובייקט

נגדיר משתנה שיכיל את האובייקט, וניצור אותו ע”י קריאה ל-Server.CreateObject.










1
2
3  








<%
Set cr=Server.CreateObject(“MSWC.ContentRotator”)
%>



הגדרת התכנים שיוצגו

ע”מ לספק לאובייקט את התכנים ממנו יבחר את הקוד להצגה, נצטרך ליצור קובץ טקסט ובו להגדיר את כל התכנים בינהם האובייקט יכול לבחור. דוגמא לקובץ כזה:










1
2
3
4
5
6
7
8
9
10
11  








%% #1
טקסט בלבד
%% #2

<h1>שלום לכולם</h1>

%% #3
<img src=“https://www.webmaster.org.il/images/banners/sweethome.jpg”>

%% #4
ואפשר גם להכניס <a href=“https://www.webmaster.org.il”>קישורים</a>


את הקובץ נשמור בשם contents.txt.
אם נרצה להוסיף קוד נוסף, נכתוב את התווים הבאים : %%# ולאחר הסולמית נכתוב את מס’ הקוד, ואת הקוד עצמו.

הצגת התכנים

לאחר שיצרנו את האובייקט, נקרא לשיטה chooseContnet, באופן הבא:










1
2
3  








<%
Response.Write(cr.ChooseContent(“contents.txt”))
%>


contents.txt מציין את שם הקובץ בו שמרנו את התכנים שלנו. השיטה chooseContnet בוחרת באופן אקראי אחד מהם, ואנחנו מציגים אותו בדף באמצעות Response.Write.

שיטה נוספת של האובייקט היא GetAllContent, אשר מחזירה מחרוזת הכולל את כל התכנים אותם כתבנו בקובץ הטקסט.










1
2
3  








<%
Response.Write(cr.GetAllContent(“contents.txt”))
%>


לחץ כאן להורדת הדוגמא

תכנות נעים!

תגיות: , , ,

ניר טייב

בונה אתרים ומתכנת בשפות:HTML, CSS, JavaScript, PHP 5, JSP&Servlets ורובי.

תגובות בפייסבוק