קבלת נתונים דרך URL (שימוש ב- GET_$ ) - תיכנות ובניית אתרים בעזרת PHP

מדור תיכנות ובניית אתרים בעזרת PHP

הוסף למועדפים | הפוך לאתר הבית
מדור ברשת



רוצה לעזור?

אם אתה מעוניין לעזור לנו בפיתוח האתר, באפשרותך לשלוח מאמר\מדריך אל רשימות המאמרים שלנו, תודה על שיתוף הפעולה, הנהלת האתר.


אתרים מומלצים

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

דף ראשי -> תכנות ובניית אתרים -> תיכנות ובניית אתרים בעזרת PHP -> קבלת נתונים דרך URL (שימוש ב- GET_$ )
קבלת נתונים דרך URL (שימוש ב- GET_$ )
קבלת נתונים דרך URL

בדפים רבים במערכות דינאמיות יש דפים שנראים כך:
filename.php?id=453

מה זה בעצם אומר?

הסימן שאלה אחרי ה- php. מתחיל שליחת נתונים דרך ה-URL.

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

ניתן לשלוח את הפרמטר הזה בצורה פשוטה מאוד כך:

bla.com/show-page.php?pid=1

זו סתם דוגמא והפרמטר PID שווה ל-1, ניתן לגשת את הפרמטר (משתנה) pid דרך קוד PHP ככה:


קוד

$page_id = $_GET["pid"];


פה בעצם הכנסנו למשתנה page_id$ את מספר העמוד שנשלח לנו בכתובת, לאחר מכן נוכל לעשות עם הפרמטר הזה כל מה שנרצה, למשל נוכל לשלוף את העמוד ממסד הנתונים שלנו שהמספר שלו שווה ל-1.

דוגמא קצרה:

קוד

select * from pages where pid='$pid'


זו בעצם שאילתא שמבקשת מהטבלה (pages) שנמצאת במסד הנתונים שלנו את העמוד שהמספר שלו הוא שווה למשתנה pid$ (בדוגמא שלמעלה - עמוד מספר 1 ).

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

בדרך זו נוכל לפתוח בלי סוף עמודים תחת קובץ אחד!
file.php?pid=1
file.php?pid=2
file.php?pid=3
file.php?pid=4

כמובן במקום להשים את המשתנה pid=345 אפשר גם להשים כל משתנה אחר, אבל נצטרך לגשת אליו בהתאם.

דוגמא:
file.php?Page_Number=1

וניגש אליו ככה (עם המשתנה הגלובאלי GET_$):

קוד

$page_number = $_GET["Page_Number"];


הערה: למידע שמייובא לכם דרך ה-URL (הכתובת) אפשר לגשת רק בעזרת המשתנה הגלובאלי [""]GET_$ ובין הסוגריים יש לשים את שם המשתנה שמופיע ב-URL שאתם בוחרים.
אל תשכחו שיש רגישות לאותיות גדולות וקטנות!

דוגמא נוספת לשימוש בהעברת מידע דרך הכתובת ב-PHP

בחלק ממערכות פורומים לדוגמא או בזמן בניית אתרים לפעמים לא יהיו עמודים כאלו:
show-page.php
news.php
show-topic.php

אלא תראו משהו כמו:
index.php?f=show-page
index.php?f=news
index.php?f=show-topic

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

תוכלו לראות שכל פעם המשתנה f ב-URL (כתובת האתר) מכיל מידע שונה (show-page/news/show-topic).

לפני שנמשיך, עליכם להכיר פונקציה שמכניסה אל קובץ מסויים - קובץ אחר, דוגמא:

קוד

include_once "filename.php";


נגיד שיש לנו קובץ A.php וקובץ B.php בקובץ A יש לנו חלק העליון של האתר ובקובץ B יש חלק תחתון של האתר.
כדי לשלב בניהם אנו נשתמש בפונקציה שהזכרנו למעלה, ככה:

קוד

innclude_once "B.php";


הפונקציה הזו צריך להיות בתוך הקובץ A.php והכי למטה (מכוון שאנו מייבאים את הקובץ B.php והוא החלק התחתון של האתר).

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

אז נזכור למה שאמרנו קודם, במקרה שאתם רוצים שהאתר שלכם יחולק כך לדפים:
index.php?f=show-page
index.php?f=news
index.php?f=show-topic

אז זה מה שאתם עושים בעצם בקובץ ה- index.php הראשי:

קוד

<?php

if($_GET["f"] == "news")
{

include_once "news.php";

}
elseif($_GET["f"] == "show-page")
{

include_once "show-page.php";

}
elseif($_GET["f"] == "show-topic"))
{

include_once "show-topic.php";
}
?>



פה אנחנו בעצם בודקים כל פעם האם המשתנה f שמועבר ב-URL (בכתובת האתר שלכם) שווה לאחד מהקבצים שבמערכת שלכם, במידה והוא שווה לאחד מהם אז זה מייבא את הקובץ עם הפונקציה include_once את הקובץ המתבקש.

במקרה הראשון זה מייבא את הקובץ news.php מכוון שהמשתנה f שבכתובת האתר מבקש את הקובץ news.

במקרה השני זה מייבא את הקובץ show-page.php מכוון שהמשתנה f שבכתובת האתר מבקש את הקובץ show-page.

תנסו לחשוב לבד מה קורה בבמקרה השלישי (אותו הדבר למעשה).

הערה: השיטה הזו לא מומלצת תמיד, אבל זו רק דוגמא פשוטה לשימוש במשתנה הגלובאלי GET_$ ובפונקציה include_once.
יש עוד שיטות רבות להעביר מידע בין דפים - על שיטות אלו תוכלו ללמוד במדריכים הבאים.

הסבר על הסימנים בכתובת

bla.php?f=show-page&id=454

סימן שאלה ( ? ) כדי להתחיל ולהכניס פרמטרים שונים ל-URL עליכם לכתוב סימן שאלה אחרי ה- php. ואז את המשתנה ואז שווה ואז את הערך (תוכן של המשתנה).

הסימן שווה מכניס למשתנה את הערך שלו.

הסימן & אומר שיש התחלה של משתנה חדש רק לאחר שיש יותר ממשתנה אחד ב-URL.
דפים נוספים בקטגוריה תיכנות ובניית אתרים בעזרת PHP
קבלת נתונים מטפסים ואבטחה
ניווט אתר בעזרת include ו-switch ואבטחה
שימוש ב- sessions
עיזרו לנו
אהבת את המדריך? הצבע עבורנו וקדם את האתר שלנו!