بررسی تفاوت متدها با یک مثال :
متد GET_$
متدی است که شما هر اطلاعاتی را که بخواهید توسط آن به سمت سرور بفرستید را در قسمت آدرسبار مرورگر وارد میکند و از آن طریق به سمت سرور میفرستند.برای شما فرض کنید که فرمی دارید و میخواهید نام کاربری و کلمه عبور کاربران را از سمت کامپیوتر او به سمت سرور بفرستید، یک چیزی شبیه این کد :
<form action="action.php" method="get">
<input type="text" name="username" placeholder="Username ."><br><br>
<input type="password" name="password" placeholder="Password ."><br><br>
<input type="submit" value="Login">
</form>
این کد اطلاعات را از کاربر دریافت میکند و بلافاصله بعد از کلیک بر روی دکمهی Login اطلاعات را به فایلی که در مقدار action در خط اول اشاره شده میفرستد. سپس میتوانیم از فایل action.php به اطلاعاتی که از این فرم ارسال شده دسترسی داشته باشیم.
دقت کنید که در همان خط اول ما method را برابر get قرار دادیم و این به این معنا است که میخواهیم اطلاعات این فرم را از طریق متد get به صفحهی action.php بفرستیم. حالا اگر username و password را وارد کنیم و روی دکمهی Login کلیک کنیم به صفحهی action.php منتقل میشویم.
حالا اگر به قسمت آدرسبار مرورگرمان نگاه کنیم میبینیم که همان اطلاعاتی که در فرم نوشته بودیم در آدرس هم قرار دارد و برای ما نمایش داده میشود :
از این میتوانیم متوجه شویم که متد get برای اطلاعاتی که بسیار طولانی هستند و یا اطلاعاتی که ارزش امنیتی دارند اصلا مناسب نمیباشد. مثل همین مثال که ما اصلا درست و منطقی نیست کلمه عبور کاربران را با متد get به سرور بفرستیم، زیرا اطلاعات آنها به خطر میافتد.
در همان فایل action.php میتوانیم به این شکل به اطلاعاتی که از همان فرم فرستادیم دسترسی پیدا کنیم :
<?php
$username = $_GET["username"];
$password = $_GET["password"];
echo $username . ' ' . $password;
?>
متد post روش امن تری برای ارسال اطلاعات است و دیگر اگر اطلاعات فرم را از طریق متد post به صفحهی دیگری بفرستیم، آن اطلاعات به هیچ طریقی قابل دسترسی نخواهند بود و از امنیت خوبی بهره میبرند.برای ارسال اطلاعات یک فرم از طریق متد post کافیست هنگام تعریف یک فرم به این شکل عمل کنیم :
<form action="action.php" method="post">
.
</form>
و اگر بخواهیم اطلاعات را درون فایل action.php بخوانیم کافیست کدی که بالاتر گفتیم را به این شکل تغییر دهیم :
$username = $_POST["username"];
$password = $_POST["password"];
echo $username . ' ' . $password;
تمرین1 :
فرم مشخصات کالا که شامل پنج فیلد نام کالا، کد کالا،نام سازمنده ،رنگ ،سال ساخت کالا می باشد به دو روش post , get به صفحه php ارسال و اطالاعات هر کدام را نمایش دهید .
تمرین 2: خروجی تمرین یک را را فایل css جلسه اول ترکیب نموده و قالب فرم را به استایل مورد نظر تغعییر دهید
درباره این سایت