View Single Post
ישן 03-12-05, 12:31   # 1
רומן
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Dec 2005
מיקום: באר שבע
גיל: 37
הודעות: 405
שלח הודעה באמצעות ICO אל רומן

רומן לא מחובר  

טוב שיעמם לי אז אני מוסיף משהו לגל המדריכים.כמה דברים שימושיים..

טוב החלטתי להראות לאנשים איך לשים הרבה משתנים לתוך מחרוזת אחת!
למשל, בניתם פורום, ואתם רוצים להראות למשתמש אם הוא צפה באותו האשכול או לא?
אז אתם מכינים את, ובתוכו מספר האשכול שהמשתמש קרא "-" ואז המספר הבא,
נניח ויש לנו מחרוזת כזאת:


PHP קוד:
    $string "2-3-8-9-11-24";
    
$arr=explode("-",$string); 
מה שבעצם עשינו פה הוא לקחנו מחרוזת עם הרבה מספרים שמופרדים ע"י "-"
איך אנחנו הופכים כל מספר במחרוזת הזאת למשתנה בפני עצמו?
פשוט מאוד, יש פונקציה שנקראת explode, היא מפרידה את כל המחרוזת בתו שאנו
מגדירים ומכניסה הכל למערך!
בדוגמא הפרדנו את המחרוזת string עם התו "-" והכנסו הכל למערך arr..

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

PHP קוד:
$num count($arr); 
הפונקציה count סופרת הכל במערך שאנו מגדירים לה, במקרה הזה את המערך arr
ומכניסה את מספר המשתנים שמבערך הזה למשתנה num.

PHP קוד:
for($i 0$i<= $num$i++){
echo 
"$arr[$i]<br>";

ופה פשוט מאוד אנו עושים לולאה כערך המספר num, ופולטים את כל המשנים אחד אחד..


דבר שימושי נוסף שאפשר לעשות עם מערך זה שוב המחרוזת הזו:
PHP קוד:
$string "2-3-8-9-11-24"
ויש לנו עוד מספר במשתנה כלשהו, למשל:
$a = 11;
אנחנו רוצים לראות אם ה11 הזה קיים במערך שלנו!

אז ככה:

PHP קוד:
$string "2-3-8-9-11-24";
$arr=explode("-",$string); 
שוב מחלקים הכל ומכניסים למערך arr

ואז:
PHP קוד:
    if(in_array($a,$arr)){
    echo 
"המספר כבר קיים במערך";
    } else{
echo 
"המספר עדיין לא קיים במערך";

אני חושב שזה דיי מובן אבל אני אסביר, מגדירים לפונקציה in_array, איזה מילה לבדוק ואחרי זה באיזה מערך, ואז זה בודק אם זה קיים או לא, דיי שימושי...

---------------------

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

PHP קוד:
$queryz mysql_query("SELECT * FROM user")or die(mysql_error());
$x mysql_fetch_array($queryz);
$a$x["a"];
$b $x["b"];
$c $x["c"];
$d $x["d"]; 
וכן הלאה, ולרוב יש הרבה יותר מידע שמוציאים מהמסד! (כמובן עם שמות אחרים),
אז יש משהו שמקצר את זה, ומוציא את כל התאים לתוך משתנה בשם התא!
לדוגמא:

PHP קוד:
$queryz mysql_query("SELECT * FROM user")or die(mysql_error());
$x mysql_fetch_array($queryz);
extract($x); 
הפונקציה extract לוקחת מאיפה שאנחנו צריכים את שם התא למשל "user" ומכניסה אותו כבר למשתנה בשם התא, למשתנה user, וככה לשאר, וזהו זה חוסף לכם להוציא 20 דברים ממה שרציתם בשורה קטנה ופשוטה...

------------------------

עוד משהו שימושי, שאני מעריך שהרוב יודעים אבל בכל זאת איך מגינים על מחרוזת מפני שטויות והזרקות, אז ככה, קודם כל להוציא את ההשפעה מתגי html:

PHP קוד:
$user htmlspecialchars("$u"ENT_QUOTES); 

זה לוקח את המשתנה u משנה את כל תגי ה html לקידוד שלהם על מנת שלא ישפיעו על הפלט ומכניס הכל למשתנה user.

חסימת הזרקות:
תגים כמו " ו ' הם מסוכנים למחרוזת וכל מיני צוציקים שמשעמם להם יודעים איך לגרום לזה נזק, אז יש פיתרון דיי פשוט:

PHP קוד:
$username mysql_real_escape_string($user); 
זה מעיף את כל הסימנים המסוכנים למינהם ושם סימן סלאש לפני שמוריד את ההשפעה,
אהל מה בעצם? זה עושה לנו מחרוזת עם סלאשים לדוגמא הכניסו את הערך:
ציטוט:
niger's
וכשנוציא את זה אחרי הפונקציה שעשינוי זה ייפלוט:
ציטוט:
niger/'s
אז כדי שזה ייפלוט הכל נורמאלי עושים פשוט ככה:
PHP קוד:
stripslashes($var); 
זה מעיף את כל הסלאשים למינהם מהמשתנה var ופולט הכל כרגיל ויפה



זהו, אם יש עוד בקשות וכאלה, אתם מוזמנים לבקש או לשאול

Last edited by רומן; 03-12-05 at 12:34..
  Reply With Quote