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

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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 01-03-07, 16:32   # 1
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

האם אתם -באמת- מתכנתים כמו שצריך?

שלום, אני רוצה לדבר איתכם על נושא בתכנות שנראה לכם כמובן מאליו.
במקרה הזה אני אדבר על PHP, אבל זה תקף לכל השפות באינטרנט - JS, ASP וכו'.

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

נכנסתי לאתר אחרי התקנת מסד קלילה, ומה אני רואה?
מלא NOTICEים, אזהרות וכמה שגיאות פטאליות פה ושם.
האתר כמעט הלך. אפשרות להמשיך לתכנת קיימת, אבל איך?

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

קוד בPHP שיראה כך:
PHP קוד:
if ($_GET['id'] == 3)
echo 
"addfh"
אם אין ID בכתובת, הקוד לא יעלה בשרת שלי. כלומר יעלה, אבל אני לא חושב שהגולשים כל כך ישמחו לדעת מה הנתיב המלא לקובץ בגלל השגיאה שתיווצר.

הסינטקס הנכון הוא
PHP קוד:
if ((!empty ($_GET['id'])) and ($_GET['id'] == 3))
/*OR*/
if ((isset ($_GET['id'])) and ($_GET['id'] == 3)) 
ואני שואל - האם אתם באמת מתכנתים ככה?
כדי לבדוק את זה, תכתבו בתחילת הקוד
error_reporting (E_ALL);
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 01-03-07, 16:37   # 2
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

חשבת להגדיר EROR_REPORTING במערכת ? ככה שבכל אופן גם אם יש NOTICE
הוא יתעלם מהם ?
  Reply With Quote
ישן 01-03-07, 16:38   # 3
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

ציטוט:
נכתב במקור על ידי RS324 צפה בהודעה
חשבת להגדיר EROR_REPORTING במערכת ? ככה שבכל אופן גם אם יש NOTICE
הוא יתעלם מהם ?
חשבתי, והחלטתי שהרבה יותר חכם ונכון לתכנת בסינטקס נכון.
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 01-03-07, 20:35   # 4
Derey22
הוסטסניון
 
Derey22's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: באר שבע
גיל: 31
הודעות: 2,128
שלח הודעה באמצעות ICO אל Derey22 שלח הודעה באמצעות MSN אל Derey22

Derey22 לא מחובר  

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

אז איך אני יכול להחליף אותו?
  Reply With Quote
ישן 01-03-07, 21:39   # 5
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

ציטוט:
נכתב במקור על ידי derey22 צפה בהודעה
בסינטקס נכון,אסור לך להשתמש בסוג של הif המרובה
PHP קוד:
if  )(
}

אז איך אני יכול להחליף אותו?
מה?? לא הבנתי. תסביר.

ציטוט:
1. לא ביטלת את ה ERROR_REPORTING שיתעלם מ NOTICE
כי NOTICE זה לא בעצם שגיאה זה רק אומר לך שעשית שימוש במשהו שהוא לא קיים...
2. לגבי ה REGISTER_GLOBAS לא הבנתי מה הקשר לאתחול המשתנה של ה GET
3. אם זה באמת חשוב לך אני משתמש ב ERROR_HANDLER משלי...ככה שזה לא משפיע עלי בכל מקרה...
1. נו ברור שלא, בגלל זה אני אומר שכדאי לא להסתמך על זה.
2. אמרתי שאני אף פעם לא משתמש ב$var אלא תמיד ב$_GET['var'].
3. איך יצרת ERROR HANDLER? אפילו בSQL לא הצלחתי ליצור אחד שנותן יותר מmysql_error().
הייתי שמח לפירוט / הסבר קטן.
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 01-03-07, 16:47   # 6
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

^^^
לא מדבר על HTML בהקשר כלשהו.
ציטוט:
נכתב במקור על ידי RS324 צפה בהודעה
חשבת להגדיר EROR_REPORTING במערכת ? ככה שבכל אופן גם אם יש NOTICE
הוא יתעלם מהם ?
אגב, תעשה סקר ותברר מי מאלה שלא כותב בסינטקס נכון משתמש בERROR_REPORTING, ותגיע לסכום ששואף ל0.
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 01-03-07, 17:20   # 7
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

ציטוט:
נכתב במקור על ידי BlueNosE צפה בהודעה
^^^
לא מדבר על HTML בהקשר כלשהו.


אגב, תעשה סקר ותברר מי מאלה שלא כותב בסינטקס נכון משתמש בERROR_REPORTING, ותגיע לסכום ששואף ל0.
ותעשה סקר כמה אנשים פה מתמודדים ע register_globals ועם magic_qoutes ותגיע גם לסכום השואף ל 0

בכל מקרה כל העניין של כתיבה נכונה הוא חשוב אבל הכתיבה שאתה מציין דיי מסורבלת
אם אני עושה
PHP קוד:
if($_GET['id'] == 3)
{
echo 
'hey fucker';

זה יעבוד בכל שרת... מניסיון...
  Reply With Quote
ישן 01-03-07, 17:25   # 8
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

ציטוט:
נכתב במקור על ידי RS324 צפה בהודעה
אם אני עושה
PHP קוד:
if($_GET['id'] == 3)
{
echo 
'hey fucker';

זה יעבוד בכל שרת... מניסיון...
http://www.hill.4save.net/Huh.php
הקוד שלך מועתק 1:1, עם הוספת תווי <?php ?>.

אגב, בקשר לREGISTER_GLOBALS:
המודעות לדעתי עלתה קצת בקשר לזה, בכל מקרה אני אף פעם לא מאתחל משתנה GET משום מקום.

בקשר לMAGIC QUOTES, אני משתמש במשהו אחר בשביל לבצע פעולת סינון.

עידן: אתה זה סבבה, אם אתה בטוח ב100% שאין סיכוי לשגיאות אז אין בעיה. אבל תחשוב עלי, אני מכרתי לך את המערכת, והיו בעיות תאימות מסד גם ככה, תאר לעצמך מה היה קורה אם היו גם בעיות תאימות קוד..

בכללי:
אני חושב שקוד יותר אסתטי ומסודר גם כל יותר לערוך.. וזה חלק מהעניין..
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 01-03-07, 17:33   # 9
RS324
תודה על תרומתך.
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 3,173

RS324 לא מחובר  

ציטוט:
נכתב במקור על ידי BlueNosE צפה בהודעה
http://www.hill.4save.net/Huh.php
הקוד שלך מועתק 1:1, עם הוספת תווי <?php ?>.

אגב, בקשר לREGISTER_GLOBALS:
המודעות לדעתי עלתה קצת בקשר לזה, בכל מקרה אני אף פעם לא מאתחל משתנה GET משום מקום.

בקשר לMAGIC QUOTES, אני משתמש במשהו אחר בשביל לבצע פעולת סינון.

עידן: אתה זה סבבה, אם אתה בטוח ב100% שאין סיכוי לשגיאות אז אין בעיה. אבל תחשוב עלי, אני מכרתי לך את המערכת, והיו בעיות תאימות מסד גם ככה, תאר לעצמך מה היה קורה אם היו גם בעיות תאימות קוד..

בכללי:
אני חושב שקוד יותר אסתטי ומסודר גם כל יותר לערוך.. וזה חלק מהעניין..
1. לא ביטלת את ה ERROR_REPORTING שיתעלם מ NOTICE
כי NOTICE זה לא בעצם שגיאה זה רק אומר לך שעשית שימוש במשהו שהוא לא קיים...
2. לגבי ה REGISTER_GLOBAS לא הבנתי מה הקשר לאתחול המשתנה של ה GET
3. אם זה באמת חשוב לך אני משתמש ב ERROR_HANDLER משלי...ככה שזה לא משפיע עלי בכל מקרה...
  Reply With Quote
ישן 01-03-07, 20:34   # 10
nevo
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 34
הודעות: 1,217

nevo לא מחובר  

תמיד מבצע בדיקה לGET
קוד:
$Id = (isset( $_GET['Id']))?intval( $_GET['id']):0;

Last edited by nevo; 01-03-07 at 20:36..
  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. הזמן כעת הוא 22:10.

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