• توجه: در صورتی که از کاربران قدیمی ایران انجمن هستید و امکان ورود به سایت را ندارید، میتوانید با آیدی altin_admin@ در تلگرام تماس حاصل نمایید.

ارسال اطلاعات از html به php (آموزشphp)

Mahdi Askari

مدير فنی
سلام
خب یک موردی که اکثرا مواجهش میشن باهاش و در مخصوصا برای کسانی که دارن ابتدایی کار میکنن php این هست که چجوری میشه اطلاعات رو از کاربر دریافت کرد و در php پردازش کرد
اول از همه باید بدونیم که برای دریافت اطلاعات از کاربر و پردازش اون باید از تگ های html استفاده کرد ( توجه کنید از تگ های html نه فایل های html)

یعنی میشه در یک فایل php تگ html قرار داد و اگر دکمه ارسال اطلاعات فشرده شد اطلاعات در اون فایل پردازش بشه و نتیجه رو نشون بده.

خب اول از همه باید بدونیم دریافت اطلاعات توسط تگ <input> در <form> هست

کد:
<form action="print.php" method="post" >
 <input type="text" name="data" />  
<input type="submit" value="send" />
   </form>

این یک فرم هست با یک تگ <input> که مدل اون از نوع text تعیین شده و نام اون data هست
یک تگ اینپوت دیگر هم هست که type=submit هست این یعنی یک دکمه ارسال اطلاعات که با زدن این دکمه اطلاعات ارسال میشه
در تگ فرم یک قسمت اکشن داریم که که محل و فایلی که قصد داریم این اطلاعات ارسال بشه رو تعیین میکنیم من در این مثال فایل print.php رو قرار دادم
اما نکته مهمتر در تگ فرم متود ارسال داده ها هست

در ارسال داده ها دونوع ارسال وجود داره یکی روش POST و دیگری GET .
اما نفاوت این دو در این هست که
در متود POST داده ها به صورت مخفی ارسال میشن و در اون کاربر ارسال داده و دریافت اون رو توسط فایل مقصد نمیبینه
متد GET عکس متود بالا هست و ارسال داده رویت میشه و دریافت اون توسط نوار آدرس بار مرورگر دیده میشه و امکان ویرایش وجود داره

اما فایل مقصد :
دریافت داده هایی که از طریق متود پست و گت ارسال شده باشن توسط متغییر های زیر دریافت میشن
کد:
$_POST["name"] /// برای متود پست
$_GET["name"] /// برای متود گت

نامی که در داخل [] نوشته میشه نامی هست که برای تگ اینپوت مشخص کردید ( name="data")
مثالی در مورد نمایش داده به صورت GET بزنم براتون

کد:
iranjoman.com/showthread.php?t=176&page=534

در لینک بالا یک صفحه با نام showthread.php داریم که دو آرگومان با نام های t=176 و page=534 میگیره که برای دریافت این دو مقدار

کد:
$_GET["t"]
$_GET["page"]

که اگر چاپ کنیم اطلاعات رو اولی مقدار 176 و دومی مقدار 534 رو بر میگردونه

موفق باشید:گل:
منبع : ایران انجمن
 

Mahdi Askari

مدير فنی
برای نشان دادن اطلاعات به کاربر چطوری باید این اطلاعات رو استفاده کرد

گرفتن اطلاعات و نمایش به کاربر هم از طریق دیتابیس ممکنه و هم از طریق همین متد هایی که بحث شده
معروفترین تابع نمایش echo هست
کد:
echo $_GET['user'] ;
 

ahmadfononi

معاونت انجمن
سلام
بنظرم اگه از $_POST استفاده بشه بهتره.
چون با استفاده از GET در قسمت آدرس اطلاعات رو نشون میده.
[MENTION=4792]Mahdi Askari[/MENTION]
 

Mahdi Askari

مدير فنی
سلام
بنظرم اگه از $_POST استفاده بشه بهتره.
چون با استفاده از GET در قسمت آدرس اطلاعات رو نشون میده.
@Mahdi Askari

نه احمد درسته از طریق متد POST ارسال اطلاعات امن تر هست
اما متناسب با موقعیتی که داری استفاده میکنی باید یک مدل رو انتخاب کنی
همیشه استفاده از POST امکان پذیر نیست
 

ahmadfononi

معاونت انجمن
خیلی ممنون از جوابت.
مثلا چه موقعی باید از Get استفاده کرد؟
و چه موقعی از POST؟

نه احمد درسته از طریق متد POST ارسال اطلاعات امن تر هست
اما متناسب با موقعیتی که داری استفاده میکنی باید یک مدل رو انتخاب کنی
همیشه استفاده از POST امکان پذیر نیست
 

Mahdi Askari

مدير فنی
خیلی ممنون از جوابت.
مثلا چه موقعی باید از Get استفاده کرد؟
و چه موقعی از POST؟

آدرس همین تاپیک رو نگاه کن متوجه جواب سوالت میشی
متود پست یک جورایی یکبار مصرف به حساب میاد
حتما باید یک مبدا باشه که اطلاعات رو از طریق پست بفرسته
ولی متود گت راحت بدون مبدا کار رو انجام میده
 

ahmadfononi

معاونت انجمن
آدرس همین تاپیک رو نگاه کن متوجه جواب سوالت میشی
متود پست یک جورایی یکبار مصرف به حساب میاد
حتما باید یک مبدا باشه که اطلاعات رو از طریق پست بفرسته
ولی متود گت راحت بدون مبدا کار رو انجام میده

آهان مثلا برای POST بید یک فایل دیگه هم باشه که چک کنه اول بعدش منتقل بشه به صفحه مورد نظر.
اما برای GEt اینطور نیست درسته؟
 

Mahdi Askari

مدير فنی
آهان مثلا برای POST بید یک فایل دیگه هم باشه که چک کنه اول بعدش منتقل بشه به صفحه مورد نظر.
اما برای GEt اینطور نیست درسته؟

در متد پست شما حتما باید یک فرم داشته باشی که بتونی داده ها رو ارسال کنی و حتما به یک فرم مبدا نیاز داری
اما گت بدون فرم مبدا میشه باهاش کار کرد
 
بالا