![]() |
רענון דיב עם AJAX כל חצי דקה
שלום,
לאחר חיפושים רבים בגוגל עם מילות המפתח :"refresh ajax div" ו "ajax refresh time" וכו'. לא מצאתי את מה שחיפשתי... ולכן אני פותח כאן את האשכול הנ"ל. אז, יש ברשותי DIV שמתרענן כל 3 דק' לבד, אבל בכדי לראות את הרענון - אתה צריך ללחוץ F5 (רענן). אני מעוניין לעשות כך שלא אצטרך ללחוץ F5 על מנת לרענן, כלומר, כל חצי דקה יהיה רענון אוטומתי אך ורק לDIV הזה בעזרת AJAX. במידה ויש שינוי - ישתנה. במידה ואין שינוי - אין שינוי. אבל כל חצי דקה יהיה רענון של AJAX. הנה ה-DIV שלי שאני רוצה שיתרענן כל חצי דקה: קוד:
<div id="loadPeriodical" class="box periodical"><table border="0" dir="ltr" align="center" width="95%" cellspacing="0" cellpadding="4"> ניסיתי גם להכניס את הקוד הזה לפני ה-DIV אך עדיין לא עובד: קוד:
תודה מראש, |
אהלן!
דבר ראשון בשביל לעשות את זה תיהיה חייב להפריד את קטע הקוד מהעמוד. במילים אחרות תפריד את כל מה שבתוך הDIV לעמוד PHP אחר. לאחר מכן תוכל להריץ קטע AJAX ולהחליף את תוכן הDIV הנוכחי בתוכן המתעדכן. קטע הAJAX שהצגת לא נכון. אני ממליץ לך להשתמש בjQuery, הAJAX שם פשוט ביותר. בהצלחה! |
ציטוט:
הצעה שיש לי לתת לך, תתחיל להשתמש בtry וcatch כדי לדבג את הסקריפטים שלך. למשל, את הפונקציה שכתבת "Ajax" יכלת לעטוף בtry ואז בקטע קוד של הcatch לכתוב alert(exception). אוקי, בנוגע לשגיאות שיש לך בסקריפט, אני כבר שמתי לב שיש לך שגיאה בתחביר מאחר וחסר לך סוגר מסולסל אחד בסוף ('}'). עוד משהו, כשכתבת את קטע הקוד הבא: קוד:
window.onload = function () עוד משהו מאוד חשוב, כשיצרת את האובייקט שאמור ליצור את ההתקשרות עם השרת עצמו, אתה שכחת בעצם ליצור את הבקשה להתקשרות, ולשלוח אותה. כתבתי קוד עם תיקונים וקצת הערות, לא בדקתי ככה שאני לא יודע אם עובד. אם לא עובד תכתוב פה את הבעיה ואני אנסה לעזור. קוד:
function Ajax() |
ציטוט:
יש לי שתי שאלות, אשמח אם תוכל לענות עליהם את הקוד שרשמת עלי לשים לפני הדיב שלי? ומה אמור להיות ב- ServerResponse.php? |
ציטוט:
במקום ServerResponse.php תן שם של דף PHP שנמצא על השרת שלך שתפקידו הוא לקבל את הבקשה שנשלחה מהדף ששלח אותה. כדי שתלך על בטוח, הייתי ממליץ לך להשתמש בכתובת מלאה. לדוגמא, נגיד כתובת האתר שלך היא mydomain.co.il, אזי: http://www.mydomain.co.il/path/to/page.php את path/to/page.php תחליף כמובן בדף שמקבל את הבקשה. |
ציטוט:
תקן אותי אם אני טועה, עלי לשים <script> ובסוף לסגור אותו, נכון? בכל אופן, ניסיתי את הקוד שלך לפני הדיב ופתחתי קובץ ServerRespone.php, בו לא שמתי כלום. ברגע שעשיתי את זה, האתר מאבד את עיצובו, ואיך אומרים - מתהפך. |
ציטוט:
תבין, הבקשה שאתה שולח דרך הסקריפט JS זו בקשה עם המתודה GET או POST, ובמקרה שלך בחרנו בGET. השליחה הזו עובדת אותו הדבר כמו שליחה של טופס HTML, אתה שולח בקשה שמשתמשת במתודה GET או POST לדף מסויים בשרת והדף מסויים בשרת הזה אמור להחזיר תשובה. ככה גם פה. לכן, הדף ServerResponse.php (השם זה סתם שם, אתה יכול לבחור איזה שם של קובץ קיים שבא לך), אמור להחזיר תשובה לבקשה. אם שלחנו בקשת GET (שליחה של שאילתה מקושרת), אז בקוד הPHP שמחזיר את התשובה, אנחנו נשתמש במערך: $_GET שמכיל את כל הבקשות שנשלחו. אחרת, נשתמש ב$_POST. עוד פעם, אם אתה לא מתכנת אני לא יודע עד כמה זה עוזר, בכל-מקרה, אם המטרה שלך פה זה רק שיפתרו לך בעיות, אז אין לי כוח להמשיך לכתוב פה. |
כל הזמנים הם GMT +2. הזמן כעת הוא 11:25. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ