הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   טוב שיעמם לי אז אני מוסיף משהו לגל המדריכים.כמה דברים שימושיים.. (https://hosts.co.il/forums/showthread.php?t=7959)

רומן 03-12-05 12:31

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


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 ופולט הכל כרגיל ויפה :)



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

RazRaz 03-12-05 12:33

פשש יפה.. כל הכבוד על ההשקעה.

אופיר אדי 03-12-05 13:30

יפה מאוד

Eran-s 03-12-05 13:31

מעניין מי גילה לך את סודות המערך ו-explode :|

satan 03-12-05 14:04

יפה כל הכבוד! D:

אני מקווה שיהיה לך משעמם ותכתוב מדריך לאבטחת עוגיות? (חוץ מלהצפין את תוכן העוגיה וגמרנו .. :| ).

רומן 03-12-05 14:09

ציטוט:

נכתב במקור על ידי Eran-s
מעניין מי גילה לך את סודות המערך ו-explode :|

חח ההסברים שלך זה כמו לנסות להבין סינית, אח"כ פשוט נכנסתי למניואל שם הכל יפה ומסודר


בקשר לאבטחת עוגיות ס"ה מצפינים מה שרוצים ומפרידים את המידע ב ";"

satan 03-12-05 14:12

ציטוט:

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


בקשר לאבטחת עוגיות ס"ה מצפינים מה שרוצים ומפרידים את המידע ב ";"

אוקיי תודה על המדריך השני. P:
:qqb007:

Eran-s 03-12-05 14:48

satan הוא קודם כל צריך ללמוד בעצמו לאבטח אחרי זה ילמד אחרים :\
אני הסברתי לך בבירור על explode ועוד אתה שואל אותי לפני זה על מערכים "למה זה טוב"...

satan 03-12-05 15:28

ציטוט:

נכתב במקור על ידי Eran-s
satan הוא קודם כל צריך ללמוד בעצמו לאבטח אחרי זה ילמד אחרים :\
אני הסברתי לך בבירור על explode ועוד אתה שואל אותי לפני זה על מערכים "למה זה טוב"...

אז אילו דרכים נוספות יש לאבטח עוגיה?

אגב יש לי רעיון טוב למדריך:
קוד תיקני של HTML.
ז"א XHTML זה קל ללמוד וזה לא בעיה - אבל להתאים את זה לדרישות של W3 ולדעת איך לתקן שגיאות ...

רומן 03-12-05 16:12

ציטוט:

נכתב במקור על ידי Eran-s
satan הוא קודם כל צריך ללמוד בעצמו לאבטח אחרי זה ילמד אחרים :\
אני הסברתי לך בבירור על explode ועוד אתה שואל אותי לפני זה על מערכים "למה זה טוב"...

אין בעיה תבוא נלמד גם אותך לאבטח עוגיות ערנצ'וק :)

בקשר ל xhtml תוכל למצוא הכל הכל פה:
http://www.w3schools.com/xhtml/xhtml_why.asp

תעשו פשוט next שם ותתקדמו עם השיעורים ממש מומלץ גם ללמוד מהאתר הזה את שאר הדברים,
למדתי משם css וג'אווה לא רע :)

Eran-s 03-12-05 16:30

ציטוט:

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

אגב יש לי רעיון טוב למדריך:
קוד תיקני של HTML.
ז"א XHTML זה קל ללמוד וזה לא בעיה - אבל להתאים את זה לדרישות של W3 ולדעת איך לתקן שגיאות ...

התאמה לדרישות W3 זה בעצם קוד XHTML תקני...
רומן בוא תלמד גם עוגיה אתה לא יודע לאבטח וגם בכלל...

רומן 03-12-05 16:33

ציטוט:

נכתב במקור על ידי Eran-s
התאמה לדרישות W3 זה בעצם קוד XHTML תקני...
רומן בוא תלמד גם עוגיה אתה לא יודע לאבטח וגם בכלל...

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

Eran-s 03-12-05 16:35

אני אשמח אם תעביר את הויכוח לפרטי...
יש הבדל ביני לבינך - אליי פונים לעזרה וחלקם מקבלים עזרה ואלייך פונה ילד פעם בשנה...

רומן 03-12-05 16:38

ציטוט:

נכתב במקור על ידי Eran-s
אני אשמח אם תעביר את הויכוח לפרטי...
יש הבדל ביני לבינך - אליי פונים לעזרה וחלקם מקבלים עזרה ואלייך פונה ילד פעם בשנה...

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

בקשר לעוגיות והתחברות עם סאשנים וכו' אולי נכתוב פעם הבאה, כשיהיה לי כח :)

satan 03-12-05 17:10

ציטוט:

נכתב במקור על ידי Eran-s
התאמה לדרישות W3 זה בעצם קוד XHTML תקני...
רומן בוא תלמד גם עוגיה אתה לא יודע לאבטח וגם בכלל...

יש לי קוד תיקני XHTML - ז"א ללא שגיאות כמו תגים חסרים או החסרת " או < > או \ בסוף תגים שאין להם תגים סוגרים.. ועוד כמה דברים.. אבל עדיין השגיאות שמוצגות לי לא מובנות ואני לא עובר ת"טאסט" שלהם באתר ההוא - אבל המערכת שלי נראת טוב בדפדפן FF...

ועוד דבר למה אתם רבים? P :

רומן 03-12-05 18:07

חח אני לא רב הוא נטפל אליי משום מה,
ואני אגיד לך מה הבעיה, יש דברים שהם שונים לחלוטין ב xhtml, אני לא עובד עם זה,
אני האמת שם *** על FF , אבל אולי הגיע הזמן לשנות את הגישה, בכל אופן גל מיני דברים כמו
margin וכל מיני הגדרות של טבלה למינהם ב xhtml יש להם שם אחר, ז"א הם לא קיימים בכלל,
תבדוק את זה, הבאתי לינק למדריך תעבור איתו לאט לאט על הקוד אתה תמצא..

satan 03-12-05 18:45

ציטוט:

נכתב במקור על ידי רומן
חח אני לא רב הוא נטפל אליי משום מה,
ואני אגיד לך מה הבעיה, יש דברים שהם שונים לחלוטין ב xhtml, אני לא עובד עם זה,
אני האמת שם *** על FF , אבל אולי הגיע הזמן לשנות את הגישה, בכל אופן גל מיני דברים כמו
margin וכל מיני הגדרות של טבלה למינהם ב xhtml יש להם שם אחר, ז"א הם לא קיימים בכלל,
תבדוק את זה, הבאתי לינק למדריך תעבור איתו לאט לאט על הקוד אתה תמצא..

אוקיי - אני להפך חושב ש-FF יותר טוב מ-IE אבל אני פשוט רגיל ל-IE ואין לי כוח להחליף דפדפנים ולהתרגל מחדש.
כי זה לא כזה מעיק לי.

ואני זוכר שבאתר של המשחק דפדפן שלך יזראסולדר תמך במקצת בFF (ככה נכנסים ל-2 חשבונות במכה.. P: ).


אבל לא כדאי לא לתמוך בדפדפן מסויים רק מדעה אישית... שיהיה לבריאות לכולם. :qqb008:

וכנראה שקוד תקין לגמרי לא יהיה בעדיפות גבוה עבורי.

רומן 03-12-05 19:09

בוא אני אגיד לך ככה, נניח טבלאות וטקסט וכו' אני בונה את הבסיס בפרונט פייג',
ומן הסתם הקודים שם הם ממש לא תומכים ולא מכירים את FF, הסיבה שאיזרהסולג'רס
נראה טוב ב FF היא ממש מקרית! לא יודע למה, פשוט היה ככה, ולא היה שם אפילו טיפת xhtml...


כל הזמנים הם GMT +2. הזמן כעת הוא 06:47.

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