سبد (0)

تبلیغات

متغیر get_$ در PHP

متغیرهای عمومی از پیش تعریف شده (Superglobal) در PHP

Wiki

Superglobalها در واقع متغیرهای از پیش تعریف شده ای هستند که صرفنظر از محدوده یا قلمرو، همیشه می توانید در هر تابع، کلاس یا فایلی به آنها دسترسی داشته باشید.

متغیرهای Superglobal در PHP:

  • GET_$
  • POST_$
  • REQUEST_$
  • GLOBALS$
  • SERVER_$
  • FILES_$
  • ENV_$
  • COOKIE_$
  • SESSION_$

در این بیاموزهای و بیاموزهای بعدی، درباره هر کدام از متغیرهای بالا، توضیح داده خواهد شد.


متغیر GET_$

Wiki

GET_$ یک متغیر یا آرایه از پیش تعریف شده است و مقادیر فرم HTMLی که خصوصیت method آن با مقدار "get" پر شده باشد، به صورت اتوماتیک در آن ذخیره می شوند.

توجه:

  1. توجه داشته باشید حروف متغیر GET_$، حروف بزرگ است.
  2. اطلاعات فرستاده شده از یک فرم HTMLی که خصوصیت method آن با مقدار "get" پر شده باشد توسط هر شخصی قابل مشاهده است (اطلاعات در نوار آدرس مرورگر نمایش داده می شود)، این موضوع در ارسال اطلاعات محدودیت ایجاد می کند.

مثال:

<form action="welcome.php" method="get">
   Name: <input type="text" name="fname" />
   Age:  <input type="text" name="age" />
         <input type="submit" />
</form>

زمانی که کاربر روی دکمه "Submit" کلیک می کند، URL زیر به سرور فرستاده می شود و البته این آدرس توسط هر شخصی قابل مشاهده است:

http://www.beyamooz.com/welcome.php?fname=Amir&age=28

فایل "welcome.php" حالا می تواند با استفاده از متغیر GET_$ اطلاعات فرم HTML را جمع آوری کند.

نکته: نام (name) هر فیلد در فرم HTML یکتا است. این نام در حقیقت ایندکس آرایه GET_$ خواهد بود، و با آن می توانیم به مقادیر فیلدها دسترسی داشته باشیم.

Welcome <?php echo $_GET["fname"]; ?>.<br />
You are <?php echo $_GET["age"]; ?> years old!


چه موقع از متد "get' استفاده کنیم؟

Wiki

  1. زمانی که می خواهیم کلمه عبور یا اطلاعات حساس کاربر را ارسال کنیم، نباید ار متد get استفاده کرد.
  2. متد get برای ارسال متغیرهای با مقادیر بزرگ، مانند متن ها مناسب نیست.(نباید مقادیرمان بیشتر از 2000 کاراکتر باشد)
  3. به خاطر اینکه متغیرها و مقادیرشان در URL نمایش داده می شود، بنابراین می توان از آنها در صفحات دیگر پروژه استفاده کرد، در حقیقت از این طریق می توان متغیر ها را به صفحات دیگر پاس داد.

برای مشاهده فیلم ها و آموزش های پروژه محور برنامه نویسی PHP کلیک کنید.

دیدگاه‌ها  

+2 # آرمان 1395-12-07 17:04
سلام من کدهای html مثال بالا رو داخل یک فایل اچ تی ام ال و کدهای php رو با فرمت php. ذخیره کردم. اما وقتی روی دکمه Submit کلیک میکنم در قسمت سرور فقط پیام زیر دیده می شه:welcome
you are years old!
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+3 # امیر پهلوان صادق 1395-12-08 09:14
سلام، خروجی مثال، نشان می دهد که فیلد های fname و age تنظیم نشده است ...!
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
0 # 1690majid 1396-07-29 12:25
سلام، من هم همین مشکل رو دارم، کد رو هم کپی کردم ولی نمی شه ...!
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # امیر پهلوان صادق 1396-07-29 13:27
سلام، لطفا برای خروجی گرفتن از مثال بالا، به نکات زیر توجه فرمایید:
1- قسمت های متمایز شده در کد زیر را بررسی کنید:
ویژگی action دقیقا با مقدار welcome.php و ویژگی name دو input نیز درست تنظیم شده باشد:

<form action="welcome.php" method="get"> ;
Name: <input type="text" name="fname" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>

2- فایل welcome.php را باز کنید و قسمت های متمایز شده در زیر را دقیقا بررسی کنید که با مقادیر تنظیم شده برای ویژگی name در بالا یکسان باشد:
Welcome <?php echo $_GET["fname"]; ?>.<br />
You are <?php echo $_GET["age"]; ?> years old!
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # 1690majid 1396-07-29 13:31
code ro daghighan check kardam tu navar adress etelaat send mishe vali ru safhe nemyad
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # امیر پهلوان صادق 1396-07-30 08:08
سلام، مثال مربوط به مطلب بالا را تحت یک فایل Zip آماده کردم، لطفا فایل زیر را دانلود کرده و بعد از مشاهده نتیجه، کد آنرا بررسی نمایید:
http://beyamooz.com/images/PHP/beyamooz.zip
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # Guest 1395-12-07 16:58
سلام و خداقوت به شما. ازکی مثال هاتونو با قابلیت ویرایش میذارید؟ مثل html
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # امیر پهلوان صادق 1395-12-08 08:34
سلام، متأسفانه بدلیل حفظ امنیت، نمی توان برای آموزش های PHP مثال های قابل ویرایش در نظر گرفت.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+4 # mahdi.. 1394-10-28 19:38
REQUEST_$تعریفش چی میشه..ممنون
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # مهرداد صلاحی 1394-10-30 10:08
با سلام.
از REQUEST_$ برای دریافت اطلاعاتی که به صفحه ارسال شده استفاده میشه. چه شما از get استفاده کرده باشی و چه از post.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+2 # somi 1394-05-10 15:03
چرا جواب منو نمیدید کد رو فرستادم
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+4 # مهرداد صلاحی 1394-10-30 10:06
با سلام.
کدی نیومده!
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+4 # somi 1394-04-29 19:13
سلام اگه می تونید کمک کنید
وقتی از طریق متد post یا get مقداری ارسال می کنم در صفحه php که ایجاد کردم متغیر پست خالیه و مقداری داخل آن ارسال نمیشه
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+8 # احسان عباسی 1394-04-29 20:12
لطفا کدهاتون رو ارسال کنید تا بتوانیم اونا رو بررسی کنیم.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
-2 # saye kian 1394-04-12 13:37
در نکته آخر چرا از دوتا دستور php استفاده کردید؛همه را در یک دستور خوب قرار میدادید.
با تشکر
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+1 # احسان عباسی 1394-04-12 13:57
چون که می خواهیم بعد از نام، خط شکسته شود(با استفاده از تگ br) و همچنین بعد از کلمه های مورد نظر، مثل نام و سن، مقادیر مورد نظر ما چاپ شود مجبور هستیم تا از 2 دستور php استفاده کنیم.
اگر بخواهیم همه ی این دستورت را داخل یک دستور php قرار دهیم، اونوقت باید عبارات اچ تی ام ال مورد نظر(مثل welcome و you are ) را در متغیر هایی قرار دهیم و آنها را echo کنیم که در این صورت کار پیچیده می شود.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+3 # saye kian 1394-04-12 14:11
شما می توانید به این صورت عمل کنید:
Welcome ;lt& ?php echo $_GET["fname"]; . & You are
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
+11 # احسان عباسی 1394-04-12 14:38
درسته، برای این کار می تونیم به صورت زیر عمل کنیم:
welcome<?php echo($_GET['fna me']."<br> ;". "you are" . $_GET["age"] . "years old";)?>

اما به نظر بنده، در آموزش مقدماتی php این روش کمی پیچیده به نظر می رسه.
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن

آموزش صوتی PHP

بستن
مدرس:
سوال و جواب:

ابزاری که در پیش روی دارید یکی از ابزارهای بسیار کاربردی سایت بیاموز در زمینه آموزش است، این ابزار برای سهولت یادگیری شما کاربران محترم طراحی شده است.

فقط کافی است روی عنوان پاراگراف مورد نظرتان کلیک کنید تا پخش صدا آغاز شود ...!

تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه پرداخت آنلاین - بانک اقتصاد نوین پرداخت آنلاین - بانک سامان
 
دوره های آموزشی راه اندازی کسب و کارهای اینترنتی
تبلیغات اینترنتی