ABA


"בעיה מוזרה רצח :\"
גירסת הדפסה        
קבוצות דיון בניית אתרים נושא #14524 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 14524
Groove
חבר מתאריך 6.8.11
219 הודעות
   03:26   27.10.08   
אל הפורום  
  בעיה מוזרה רצח :\  
 
   מה שממש מוזר זה שפעם זה עבד... ועכשיו פתאום לא =\
בכל אופן מדובר פה על הצגת שגיאות בהרשמה... כל שגיאה שקורה בעת עיבוד הנתונים (המשתמש קיים כבר, הדוא"ל קיים כבר וכו') מתווספת למערך...
כמו שאפשר לראות פה:


if ( isset( $_GET['validate'] ) )
{
$error = array();
$vals = escapeThese($_POST);
$users = new userManager();

if ( $users->exists( $vals['username'] ) )
{
$error[] = 'User ' . $vals['username'] . ' is already registered!';
}
elseif ( $users->mailExists( $vals['email'] ) )
{
$error[] = 'The email address ' . $vals['email'] . ' already exists!';
}
else
{
$users->register( $vals['username'], $vals['password'], $vals['email'], $vals['country'] );
header( "Location: index.php" );
}

$why = parseErrors( $error );
}

עכשיו, הבעיה היא שהמערך אכן קיים, אבל $why נשאר ללא תוכן.
הפונקציה parseErrors:


function parseErrors ( $errors )
{
$why = "";

if ( is_array( $errors ) )
{
$j = 1;
foreach ( $errors as $key => $error )
{
$why .= "$j) <span>$error</span><br />";
$j++;
}
}
else
{
$why = "<span>$errors</span>";
}

return $why;
}

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

תודה למי שיצליח לעזור לי פעם נוספת...


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  אממ המשתנה validate מועבר בכתובת? akoka 27.10.08 08:49 1
     אכן, וכבר שיניתי את זה למשהו יותר מחמיר :| Groove 27.10.08 09:11 2
         חnחnחnחnחnחnחn חשבתי רק לי יש את השריטות האלה:| akoka 27.10.08 09:16 3
             כן אחי הוא עושה מה שצריך... Groove 27.10.08 09:18 4
                 אוקי akoka 27.10.08 09:33 5
                     אני תמיד עושה את זה אחי :\ Groove 27.10.08 09:49 6
                         חח עלה לי משו הזוי לראש akoka 27.10.08 10:04 7
                             קיצור פתרתי את זה Groove 27.10.08 10:20 8
                                 אתה והבעיות המוזרות שלך חח:| akoka 27.10.08 10:29 9

       
akoka

   08:49   27.10.08   
אל הפורום  
  1. אממ המשתנה validate מועבר בכתובת?  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Groove
חבר מתאריך 6.8.11
219 הודעות
   09:11   27.10.08   
אל הפורום  
  2. אכן, וכבר שיניתי את זה למשהו יותר מחמיר :|  
בתגובה להודעה מספר 1
 
   שלא יהיו טעויות עם ה MOD_REWRITE

if ( in_array( "validate", explode( "/", $_SERVER['REQUEST_URI'] ) ) )

:\


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   09:16   27.10.08   
אל הפורום  
  3. חnחnחnחnחnחnחn חשבתי רק לי יש את השריטות האלה:|  
בתגובה להודעה מספר 2
 
   ובדקת שהוא עובר את הIF והכול ,כאילו מוזר שזה עבד ולא עובד עכשיו ,מזכיר לי משהו משעשע עם גל Kent חח הוא היה על סף התאבדות.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Groove
חבר מתאריך 6.8.11
219 הודעות
   09:18   27.10.08   
אל הפורום  
  4. כן אחי הוא עושה מה שצריך...  
בתגובה להודעה מספר 3
 
   אבל זה... אני יתקע אותו בתחת :|
עזוב אותך שיהיו לי בעיות, סבבה, אבל למה תמיד כאלה מוזרות!!
:|~


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   09:33   27.10.08   
אל הפורום  
  5. אוקי  
בתגובה להודעה מספר 4
 
   בוא נעבור קצת על הקוד

א.בפונקציה parseErrors יש לך משתנה סטטי לפונקציה בשם J שמקודם ב1 לפי גודל המערך ,ואתה לא עושה איתו כלום בסוף ,אם עשית את זה כדי לראות אם יש במערך משהו פשוט תעשה print_r/var_dump ותבדוק אם המערך מחזיר משהו.

ב.הforeach שלך מחזיר גם את האינדקס וגם את הערך ,אבל אם אין לך צורך באינדקס ,פשוט תעשה foreach (array as error) וזהו בלי הkey.

ג.תתחיל לעשות var_dump למשתנים שלך ,תראה שאתה מקבל תוכן ,ושאתה לא עובד על ריק.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Groove
חבר מתאריך 6.8.11
219 הודעות
   09:49   27.10.08   
אל הפורום  
  6. אני תמיד עושה את זה אחי :\  
בתגובה להודעה מספר 5
 
   אני עושה print_r($error) והוא מחזיר תשובה נכונה...
לא יודע מה לעשות \=


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   10:04   27.10.08   
אל הפורום  
  7. חח עלה לי משו הזוי לראש  
בתגובה להודעה מספר 6
 
   תנסה לשנות את השם של המשתנה why בפונקציה הראשונה למשו אחר:|


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Groove
חבר מתאריך 6.8.11
219 הודעות
   10:20   27.10.08   
אל הפורום  
  8. קיצור פתרתי את זה  
בתגובה להודעה מספר 7
 
   פשוט שמתי את הכל בראש הדף
לפני זה הכל היה בסוף כדי למנוע ירידות שורה בלתי רצויות
וזה עבד בכל זאת... וכמו שאתה יודע עכשיו זה עשה פתאום בעיות

אז פשוט עשיתי את זה ופיניטו :\


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   10:29   27.10.08   
אל הפורום  
  9. אתה והבעיות המוזרות שלך חח:|  
בתגובה להודעה מספר 8
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net