|
![]() |
# 1 |
Whatever
|
שפות תכנות - Frequently Asked Questions
אתם מוזמנים ליצור כאן FAQ לנושאי התכנות השונים, יש לשמור על התבנית הבאה:
<שפת תכנות> ש: <שאלה> ת: <תשובה> פוסט שלא יישמר בתבנית הזו - יימחק, הודעה בפורום תכנות שתכלול שאלה שנענתה באשכול זה - מפרסם ההודעה יזכה באזהרה. אני מדי פעם אעדכן את התגובה מתחתיי (תגובה מס' 1 באשכול זה) עם קישורים לשאלות הנפוצות שהוספתם.
__________________
תומר |
![]() |
![]() |
# 2 |
Whatever
|
__________________
תומר |
![]() |
![]() |
# 3 |
אין כמו ב127.0.0.1
|
יפה מאוד, שמעת לי
![]() ונתחיל בשאלה שלשמה התכנסנו: PHP ש: כתבתי session_start, והופיעה לי שגיאה. מה לעשות? ת: קודם כל אני מדבר על השגיאה בפורמט הבא: Warning: session_start(): Cannot send session cache limiter - headers already sent דבר שני, יכול להיות שבשרת מבוטל הerror_reporting, ולא תופיע שגיאה, הסשן פשוט לא יעבוד. תבדקו בכל מקרה. האפשרות הראשונה היא שכתבתם משהו לפני הsession_start. מספיק אנטר לפני סימן הפתיחה (לדוגמא ה<?php), והשגיאה תופיע. (מדובר לא רק על אנטרים! כל טקסט פלט..) דבר שני שנקרא פלט הוא echo, print וכדומה - פונקציות הדפסה "שולחות" את ההיידרים לפני הפלט. במקרה כזה יש אפשרות להוסיף את הsession_start() לפני הפלט, או פשוט להוסיף את הפונקצייה ob_start() לפני הפלט (ובסופו מומלץ ob_end_flush()). האפשרות השניה מדברת על האנשים שמשתמשים בקידוד UTF-8. אם אתה עובד עם הקידוד, ואתה משתמש בנוטפד של WINDOWS או כל עורך תמלילים אחר שמוסיף BOM בהתחלה, תהיה לך את הבעיה. BOM הוא פלט שמתווסף בשמירה בקידוד UTF-8 לראש הטקסט, ובגלל זה ההיידרים נשלחים לפני הטקסט. האפשרויות במקרה הזה הן או לשמור בתור ANSI ולא בתור UTF-8 (אפשר עדיין להשתמש בהיידר לקביעת סוג התוכן, אבל זה מסתבך קצת) או לעבוד עם עורך תמלילים אחר. העורכים שמסוגלים לעשות משהו כזה הם Notepad2 (חיפוש בפורום), Notepad++ ו-Zend Studio. האחרון שציינתי עולה כסף, האחרים חינמים. יש עוד עורכים כמו PHPEdit שיוכלו לעזור.. הבאתי רק רשימה חלקית מאוד. הערה על השגיאה: שגיאה זאת יכולה להופיע לכל קוד אשר מצריך שלא יהיה לפניו פלט HTML, ואפילו רווח מהווה פלט HTML, ולכן בראש הדף כמו שכתבת, מוסיפים את הקוד, ובתחתית הדף, את קוד הסגירה. תודה לטל (WebProject) על ההערה Last edited by BlueNosE; 06-02-07 at 20:39.. |
![]() |
![]() |
# 4 |
מתאורר / יצא בחוץ
|
PHP
ש: איך אני יכול לדעת סיומת של קובץ מסוים? ת: על מנת לדעת סיומת של קובץ מסוים נחלק את שם הקובץ למערכים ע"י explode לתו "." . לאחר מכן נציב בתוך משתנה חדש את את איבר המערך האחרון שיצרנו, לשם כך, נשתמש ב count פחות 1. הקוד הסופי הוא: PHP קוד:
קוד מקור: http://www.losnir.net/file_ext.phps Last edited by LosNir; 06-02-07 at 20:31.. |
![]() |
![]() |
# 5 |
מ.תיכנות
|
שפת תיכנות: PHP שאלה: כתבתי קוד אשר אמור להעלות תמונה, ואני מקבל שגיאה על Safe mode, מה הבעיה? ואיך אפשר לפתור אותה? תשובה: קודם כל, השגיאה עליה אנו מדברים, היא השגיאה הבאה: PHP קוד:
שגיאה זאת אומרת לנו ש"Safe Mode" בפעולה, כלומר, מודול כלשהו פועל, ובעצם חוסם פעולות "מסוכנות" לשרת. אנו יכולים לעקוף את המודול על ידי לקיחת תוכן הקובץ שנבחר על ידי המשתמש, ועל ידי הפונקציות: fread,fwrite או כל פונקציה אחרת שקשורה לFile ועושה פעולות דומות לאלו, לבחור שם לקובץ, וסיומת על ידי פירוק הפרטים של הקובץ שהמשתמש בחר, וליצור קובץ חדש, עם התוכן והפרטים שלקחנו בעזרת הפונקציות הנ"ל. |
![]() |
![]() |
# 6 |
חבר בקהילה
|
CSS
שאלה: כיצד ניתן לשנות את התמונה שמוצגת כשגוללים את הדף ב-Firefox? תשובה: אם אתם רוצים לשנות את התמונה הזאת (רק באתר שלכם כמובן, זה לא ישפיע על אתרים אחרים שהגולש יכנס אליהם), תוכלו לעשות את זה עם טריק CSS קטן. נתחיל עם הקוד: קוד:
html > img { width: 0!important; height: 28px!important; padding-left: 28px!important; background: url(URL OF YOUR IMAGE); } הנה שתי דוגמאות שהכנתי (ותודה לאתר sitepoint על התמונות): דוגמה 1 דוגמה 2 Last edited by NitroPHP; 01-03-07 at 20:40.. |
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
כלים לאשכול | |
תצורת הצגה | |
|
|