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

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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 11-07-09, 23:01   # 1
Tom_l
אחראי פורום
 
מיני פרופיל
תאריך הצטרפות: Dec 2006
הודעות: 443
שלח הודעה באמצעות ICO אל Tom_l שלח הודעה באמצעות MSN אל Tom_l

Tom_l לא מחובר  

בעייה בקבצים שנוצרו בעקבות שינוי גירסאת Wamp

בעייה בקבצים שנוצרו בעקבות שינוי גירסאת Wamp,
אוקיי, אז החלפתי מחשב, ושיניתי את המערכת הפעלה ל-Vista, אז החלפתי גם ל-Wamp חדש, ועם המעבר נוצרו כמה בעיות מפגרות עם קבצים...
זאת אומרת, התכנות עצמו עובד, אבל בכל זאת יש שגיאות מיותרות \=

דוגמאות:
כשאני מנותק מהמערכת, השורות ההלו מופיעות:
Undefined index: Username
Undefined index: Username
והשורות לפי הסדר הן:
קוד:
if ($_SESSION['Username']) {
וכשאני מחובר, זה לא מראה את השגיאה.

עוד דוגמא לבעייה שנוצרה, אני מדפיס משהו בעזרת echo <<<html, זוהי השגיאה:
Undefined variable: FullName
השורה:
קוד:
<td colspan="4"><input type="text" class="text" name="FullName" value="{$FullName}" /></td>
וכאמור, הכל עובד, זה סתם שגיאות... הדף עובד הכל כמו שצריך, אבל בכל זאת שגיאות...
אני סבור כי זה נוצר סתם מאי הגדרה נכונה של Wamp? או מה? לא הבנתי...? אולי צריך לשנות משהו בגלל הגירסא, PHP, Wamp...?


אשמח להסבר כמו שצריך
תודה רבה.
  Reply With Quote
ישן 11-07-09, 23:37   # 2
Elad-A
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: May 2006
הודעות: 1,987

Elad-A לא מחובר  

בגדול, השגיאות שהצגת נוצרות בגלל שלא הגדרת את המשתנים שניסית להדפיס.
אפשר לבטל את השגיאות הללו עם הפונקצייה error_reporting
  Reply With Quote
ישן 11-07-09, 23:59   # 3
AlmogBaku
חבר וותיק
 
AlmogBaku's Avatar
 
מיני פרופיל
תאריך הצטרפות: Nov 2007
מיקום: מודיעין
הודעות: 1,022

AlmogBaku לא מחובר  

עקרונית צריך לכתוב את זה אחרת...

PHP קוד:
if(isset($_var['param'])) echo 'x'
אבל אם אתה מתעקש אפשר גם:
PHP קוד:
if(@$_var['param']) echo 'x'
  Reply With Quote
ישן 12-07-09, 06:47   # 4
Daniel
אחראי פורום
 
מיני פרופיל
תאריך הצטרפות: Mar 2007
הודעות: 2,875

Daniel לא מחובר  

ציטוט:
נכתב במקור על ידי Baku צפה בהודעה
עקרונית צריך לכתוב את זה אחרת...

PHP קוד:
if(isset($_var['param'])) echo 'x'
אבל אם אתה מתעקש אפשר גם:
PHP קוד:
if(@$_var['param']) echo 'x'
והדרך השניה זה דרך מאוד לא טובה, שלא רק לוקחת הרבה יותר משאבים - אלא גם זה לא פיתרון, זה לעצום את העיניים
  Reply With Quote
ישן 12-07-09, 09:20   # 5
Tom_l
אחראי פורום
 
מיני פרופיל
תאריך הצטרפות: Dec 2006
הודעות: 443
שלח הודעה באמצעות ICO אל Tom_l שלח הודעה באמצעות MSN אל Tom_l

Tom_l לא מחובר  

ציטוט:
נכתב במקור על ידי Baku צפה בהודעה
עקרונית צריך לכתוב את זה אחרת...

PHP קוד:
if(isset($_var['param'])) echo 'x'
אבל אם אתה מתעקש אפשר גם:
PHP קוד:
if(@$_var['param']) echo 'x'
לגבי Elad-A, תודה, אך איך אני אוכל למנוע ממנו שלא ירשום רק את השגיאות הללו? כי אלו סתם שגיאות בעיקרון... יש לפונקציה הזו כמה פרמטרים, ואני לא רוצה למנוע שלא ירשום דברים שהוא כן צריך לרשום, שגיאות שיעזרו לי הכוונה...

ולגביי Baku, תודה, אך לא ממש הבנתי מה עשית כאן... אם תוכל להסביר לי למה רשמת את השורה הזו, ובמקום איזה שורה לרשום אותה, כי תסתכל למשל בשגיאה השנייה שציינתי, למה השגיאה הזו נוצרה?


תודה.
  Reply With Quote
ישן 12-07-09, 10:15   # 6
AlmogBaku
חבר וותיק
 
AlmogBaku's Avatar
 
מיני פרופיל
תאריך הצטרפות: Nov 2007
מיקום: מודיעין
הודעות: 1,022

AlmogBaku לא מחובר  

זה אותו דבר, רק טקסט אחר..
במקרה שלך:

PHP קוד:
if (isset($_SESSION['Username'])) { 
  Reply With Quote
ישן 12-07-09, 10:18   # 7
Tom_l
אחראי פורום
 
מיני פרופיל
תאריך הצטרפות: Dec 2006
הודעות: 443
שלח הודעה באמצעות ICO אל Tom_l שלח הודעה באמצעות MSN אל Tom_l

Tom_l לא מחובר  

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

PHP קוד:
if (isset($_SESSION['Username'])) { 
ומה לגביי השגיאה השנייה:
קוד:
<td colspan="4"><input type="text" class="text" name="FullName" value="{$FullName}" /></td>
תוכל להראות לי דוגמא...?
האמת שנוצרו בעיות מסתם, זה עובד כאילו, אך סתם שגיאות, אלו סתם דוגמאות שהראיתי, יש עוד כמה שגיאות שונות שנוצרו מאותו מאותה הסיבה(שינוי גירסאת ה-Wamp), מה אתה מציע לעשות? לעבור על כל המערכת ולתקן את זה? או פשוט לשתמש בפונקציה error_reporting?

Last edited by Tom_l; 12-07-09 at 10:30..
  Reply With Quote
ישן 12-07-09, 13:28   # 8
אדיר
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Mar 2008
מיקום: אשקלון
הודעות: 1,714

אדיר לא מחובר  

אלה לא סתם שגיאות, אתה עושה שימוש במשתנים לא מוגדרים.

בנוגע לבעיה השנייה תעשה לדוגמה ככה:
PHP קוד:
$FullName = (isset($FullName) ? $FullName null); 
ואז יעשה שימוש במשתנה רק אם הוא מוגדר,
אם הוא לא מוגדר, הוא יקבע כ- null.

(את הפתרון לבעיה הראשונה כבר הביאו לך והוא זהה, תוודא שהמשתנה מוגדר [isset] לפני שאתה משתמש בו)
  Reply With Quote
ישן 12-07-09, 13:55   # 9
Tom_l
אחראי פורום
 
מיני פרופיל
תאריך הצטרפות: Dec 2006
הודעות: 443
שלח הודעה באמצעות ICO אל Tom_l שלח הודעה באמצעות MSN אל Tom_l

Tom_l לא מחובר  

ציטוט:
נכתב במקור על ידי xPerfection צפה בהודעה
אלה לא סתם שגיאות, אתה עושה שימוש במשתנים לא מוגדרים.

בנוגע לבעיה השנייה תעשה לדוגמה ככה:
PHP קוד:
$FullName = (isset($FullName) ? $FullName null); 
ואז יעשה שימוש במשתנה רק אם הוא מוגדר,
אם הוא לא מוגדר, הוא יקבע כ- null.

(את הפתרון לבעיה הראשונה כבר הביאו לך והוא זהה, תוודא שהמשתנה מוגדר [isset] לפני שאתה משתמש בו)
אוקיי הבנתי בעיקרון, אך שוב, בעבר זה לא הראה לי את השגיאות הללו.
תוכל רק לרשום לי את זה במבנה If בבקשה? בגדול הבנתי מה זה מבצע, רק במבנה:
קוד:
if () {
יותר יעזור לי, תודה רבה לך.
ואגב, לגביי השגיאה הזו:
קוד:
Use of undefined constant ID - assumed 'ID'
השורה:
קוד:
<td class="post" style="text-align: center;"><input type="button" class="btn" value="ערוך אתר" name="editSiteBTN" onClick="window.location=('EditProfile-{$result[ID]}')" style="margin: 0px;"></td>
שוב, גם השגיאה הזו נוצרה כתוצאה מהמעבר ל-Wamp שונה \= שעדיין לא הבנתי למה.
  Reply With Quote
ישן 12-07-09, 14:15   # 10
Daniel
אחראי פורום
 
מיני פרופיל
תאריך הצטרפות: Mar 2007
הודעות: 2,875

Daniel לא מחובר  

יש דרך לתכנת,
וחלק מהדרך הזאת זה לא להשתמש במשתנים לא מוגדרים, לקרוא למערכים בצורה נכונה - וכו'.

כאשר לא תתכנת בדרך הנכונה, המערכת תציג שגיאה.
מכיוון שרבים האנשים שלא יודעים לתכנת נכון (מצטער אם זה בגסות גדולה), אז במקום ללמוד לתכנת נכון - מגדירים שהשרתים יתעלמו מהשגיאות שלהם.
אתה לא יכול לקרוא למערך ככה: $results[ID] - אתה צריך לשים גרש/יים מסביב ל-ID.
  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. הזמן כעת הוא 03:22.

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