הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 19-07-07, 19:01   # 1
DCB
חבר על
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 966

DCB לא מחובר  

[שאלה] הפונקציה ob_start

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

תודה לעונים
  Reply With Quote
ישן 19-07-07, 19:35   # 2
Elad-A
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 1,987

Elad-A לא מחובר  

זה כדי לבטל שגיאות של הדרים ששולחים אחרי פלט (כמו למשל ליצור עוגייה אחרי שהדפסת משהו)
  Reply With Quote
ישן 19-07-07, 20:35   # 3
DCB
חבר על
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 966

DCB לא מחובר  

מה יוצר את השגיאה....
עבודה חכמה אמורה לאפשר כתיבת תוכנה בלי הפונקציה הזאת לא?
  Reply With Quote
ישן 19-07-07, 20:50   # 4
בניה
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: נחושה
הודעות: 3,434

בניה לא מחובר  

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

בכל קובץ שמגיע בHTTP השרת שולח קודם
(header שזה בתרגום חופשי אומר הדברים שבקדימה/ראשונים)
מידע על הקובץ, זה יכול להיות תאריך שינוי, קידוד הדף ועוד.
דוגמא לכזו פיסת מידע:

קוד:
HTTP/1.1 200 OK
 Date: Mon, 23 May 2005 22:38:34 GMT
 Server: Apache/1.3.27 (Unix)  (Red-Hat/Linux)
 Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
 Etag: "3f80f-1b6-3e1cb03b"
 Accept-Ranges: bytes
 Content-Length: 438
 Connection: close
 Content-Type: text/html; charset=UTF-8
אחד הדברים שנשלחים בheadres זה הפקודה ליצירת עוגיה.
אז אם כבר שלחת משהו מדף שלך לדפדפן אז הheaders כבר נשלחו
ואם פתאום באמצע הדף החלטת שאתה רוצה לשלוח עוגיה אתה לא יכול.
ציטוט:
Headers already sent in...
אז OB_start עוזר לנו בזה שהוא שומר את כל הפלט שאנחנו רוצים לשלוח ורק אחרי שסיימנו את הדף(ולקבוע את העוגיות שלנו)
הוא שולח את כל ההדרים והפלט.
  Reply With Quote
ישן 19-07-07, 20:56   # 5
חיים
חבר וותיק
 
חיים's Avatar
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
מיקום: עפולה
גיל: 31
הודעות: 1,548
שלח הודעה באמצעות ICO אל חיים שלח הודעה באמצעות MSN אל חיים Send a message via Skype™ to חיים

חיים לא מחובר  

בקיצור הוא לא מסוכן ולא מכביד ולא כלום זאת פונקצייה מצויינת לשימוש בדברים שקשורים לאדרים באמצע הדף...
__________________
בברכה, חיים.

  Reply With Quote
ישן 19-07-07, 21:05   # 6
בניה
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: נחושה
הודעות: 3,434

בניה לא מחובר  

אולי לוקח קצת יותר זיכרון.
אבל כן, זה טוב למקרים כאלה.
  Reply With Quote
ישן 20-07-07, 00:09   # 7
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

שאם ילמדו לתכנת נכון, לא יצטרכו להשתמש בה בכלל.

המקרה היחידי האמיתי אולי שאני רואה שמצריך שימוש בפונקציה הזאת
זה כשרוצים לכווץ את משקל העמוד בעזרת HANDLER מסויים ומשתמשים בה.
שזאת אפשרות מצויינת
מעבר לזה, סדר אף פעם לא הזיק לאף אחד.
  Reply With Quote
ישן 20-07-07, 00:57   # 8
DCB
חבר על
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 966

DCB לא מחובר  

בניה תודה רבה על ההסבר המפורט

RS324 (איך קוראים לך ד"א? :P)
איך אתה יוצר עוגיה למשל בראש העמוד לפני כל פלט כל שהוא אם אתה צריך לעשות בדיקה למשל?...
אשמח לשמוע על דרכים להמנע מהפונקציה הזאת למרות שלי מה שהבנתי היא לא מזיקה כל כך
  Reply With Quote
ישן 20-07-07, 01:04   # 9
Eran-s
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 2,609

Eran-s לא מחובר  

ציטוט:
נכתב במקור על ידי DCB צפה בהודעה
בניה תודה רבה על ההסבר המפורט

RS324 (איך קוראים לך ד"א? :P)
איך אתה יוצר עוגיה למשל בראש העמוד לפני כל פלט כל שהוא אם אתה צריך לעשות בדיקה למשל?...
אשמח לשמוע על דרכים להמנע מהפונקציה הזאת למרות שלי מה שהבנתי היא לא מזיקה כל כך
קוראים לו רותם...

עוד סיבה למה לא להדפיס HTML בתוך הקובץ ולא שום הודעה,
משתמשים במערכת Templates והיא מדפיסה את התוכן בסוף ולכן השגיאה לא נוצרת.
__________________
מפתח ומתחזק אתרים.
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 00:01.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ