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

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

Alon.R 27-12-05 19:42

יש לי שאלה...
 
שלום,

אני צריך לדעת איך אני עושה כאשר יכנסו לכתובת מסויימת כמו:
blabla.php?f=55

הוא יקח את המספר - 55 במקרה הזה ויציב אותו בשאילתה.

דוגמא:

PHP קוד:

mysql_query("SELECT blabla FROM koko WHERE id='55'",$mysql_link); 

ובמקום ה55 זה ישתנה לבד לפי הקישור שנכנסים אליו..
יעני אם נכנסים ל 2 [?f=2] זה יריץ את השאילתה עם id='2'....

Help Plz:qqb014:

שקד 27-12-05 19:51

הנה
PHP קוד:

 mysql_query("SELECT * FROM `table` WHERE `id`='{$_GET['f']}'") or die(mysql_error()); 

פונקציות שימושיות למקרה זה:
mysql_query

Alon.R 27-12-05 19:52

שקד בדיוק למדתי את זה במדריך דומה בphp-il, תודה רבה לך בכל מקרה.

Ikki 27-12-05 20:09

ציטוט:

נכתב במקור על ידי שקד
הנה
PHP קוד:

 mysql_query("SELECT * FROM `table` WHERE `id`='{$_GET['f']}'") or die(mysql_error()); 

פונקציות שימושיות למקרה זה:
mysql_query

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

להלן ההסבר:
המשתנה הגלובאלי $_GET מיועד עמ"נ להוציא נתונים שנשלחו אילנו בשיטת השליחה GET(במקור -שיטת שליחת טפסים).
כעת אנו מעוניינים להוציא מידע שנשלח אל הכתובת, מה שאנחנו רוצים בעצם זה למצוא מידע שנשלח אילנו בצורת GET.
כעת בוא נבין את זה לעומק העניין.

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

בוא נסביר את פעולת הGET בצורת אלגוריתם-קוד:
מידע נשלח בצורת POST - מועבר לכתובת שהנתונים של POST מוכלים בו:
PHP קוד:

header("Location: index.php?name=" $_POST['name']); 

מה אנו מבינים?, הGET הוא בעצם מציאת מידע ע"י הכתובת.

כעת נבין לעומק מדוע אנו משתמשים דאווקה בGET ולא ע"י משתנה ישיר.
כאמור במדריך "הגנה נגד הזרקות כתובת"(בצע חיפוש בפורום), אנו משתמשים בGET עמ"נ להגן על הקוד שלנו מפני הזרקות.

PHP קוד:

// index.php?text=Php.net
echo $text;
// Return Php.net 

זו למשל דרך שגויה לגשת אל משתנה מהכתובת!

PHP קוד:

// index.php?text=Php.net
echo $_GET['text'];
// Return Php.net 

וזו הגישה הנכונה!.

קצת ארוך...
אבל אני מקווה שזה ילמד אותך משהוא לעומק יותר...

בהצלחה!

Alon.R 27-12-05 20:19

Ikki
תודה רבה! קראתי הכל זה היה לי די ברור מאליו אבל תמיד טוב לשמוע אישור על הדברים שאתה חושב.

שוב תודה.

somebody 27-12-05 22:38

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

שקד 28-12-05 08:02

ציטוט:

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

להלן ההסבר:
המשתנה הגלובאלי $_GET מיועד עמ"נ להוציא נתונים שנשלחו אילנו בשיטת השליחה GET(במקור -שיטת שליחת טפסים).
כעת אנו מעוניינים להוציא מידע שנשלח אל הכתובת, מה שאנחנו רוצים בעצם זה למצוא מידע שנשלח אילנו בצורת GET.
כעת בוא נבין את זה לעומק העניין.

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

בוא נסביר את פעולת הGET בצורת אלגוריתם-קוד:
מידע נשלח בצורת POST - מועבר לכתובת שהנתונים של POST מוכלים בו:
PHP קוד:

header("Location: index.php?name=" $_POST['name']); 

מה אנו מבינים?, הGET הוא בעצם מציאת מידע ע"י הכתובת.

כעת נבין לעומק מדוע אנו משתמשים דאווקה בGET ולא ע"י משתנה ישיר.
כאמור במדריך "הגנה נגד הזרקות כתובת"(בצע חיפוש בפורום), אנו משתמשים בGET עמ"נ להגן על הקוד שלנו מפני הזרקות.

PHP קוד:

// index.php?text=Php.net
echo $text;
// Return Php.net 

זו למשל דרך שגויה לגשת אל משתנה מהכתובת!

PHP קוד:

// index.php?text=Php.net
echo $_GET['text'];
// Return Php.net 

וזו הגישה הנכונה!.

קצת ארוך...
אבל אני מקווה שזה ילמד אותך משהוא לעומק יותר...

בהצלחה!

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

Alon.R 28-12-05 13:15

somebody
אלמוג יא חצי אשכנזי!!!
לא הבנתי מילה...

נדבר כבר במסן.

LosNir 28-12-05 14:59

פשוט ומסודר:

PHP קוד:

<?
$f 
$_GET['f'];
mysql_query("SELECT blabla FROM koko WHERE id='$f'",$mysql_link);
?>

אם לא עובד אז תוריד את המרכאות שיש ב $f שבתוך השאילתה.

Ikki 29-12-05 00:04

בעע, כבר תיקנתי לך את הקוד המלא, ואני מחכה לך שתתחבר :|


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

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