طراحی سایت, ساخت ربات تلگرام, آموزش php , سورس کد php ,سورس ربات تلگرام , سورس فروشگاه اینترنتی , آموزش طراحی وب

ریدایرکت با php


ریدایرکت با php

ریدایرکت با php مکانیزمی برای هدایت کاربر از یک صفحه به صفحه دیگر بدون کلیک کردن بر روی یک لینک است . این قابلیت ریدایرکت با php  در مواردی که نیاز به هدایت کاربر در پشت صحنه باشد ، بسیار مفید خواهد بود . برای مثال ، زمانی که کاربر در حال انتقال به صفحه پرداخت می باشد ، ریدایرکت باید به صورت خودکار توسط اسکریپت php انجام شود .

Php تابع پیشفرضی برای هدایت کاربر از طریق url، به اسم header() معرفی کرده است . با استفاده از تابع header در php ، ما نیاز داریم که location را برای هدایت کاربر در قالب url یا به صورت relative (نسبی) تعیین کنیم.

برخلاف ریدایرکت با جاواسکریپت که راه های مختلفی برای مدیریت url بر اساس مرورگر خاص ارایه داده است ، php از این پیچیدگی اجتناب کرده و فقط یک تابع header برای اعمال تاثیر یکسان بر روی تمامی مرورگرها ارایه داده است . پس حتما متوجه شدید که ریدایرکت با php بسیار آسان تر و منطقی تر از استفاده در جاواسکریپت می باشد .!

ریدایرکت با php

سینتکس ریدایرکت با php

در کد سینتکس ریدایرکت با php بالا ، ما باید یک url صحیح برای صفحه ای که قصد هدایت کاربر به آنجا را داریم تعیین کنیم . می توانیم url ها را به صورت کامل (absolute) یا نسبی (relative) مشخص کنیم . اگر آدرس url به صورت نسبی تعیین کنیم ، در اینصورت در به دنبال آدرس در جایی که هستیم می گردد .

نکته : قبل از مشخص کردن آدرس url در loction header ، باید از وجود صفحه مورد نظر اطمینان پیدا کنیم.

حتما بخوانید  اصول وب سرویس RESTful - بخش سوم

احتیاط قبل از redirect

قبل از اجرای عملیات ریدایرکت با php ، باید در این مورد اطمینان داشته باشیم که ، هیچ خروجی در مرورگر قبل از خطی که قصد صدا زدن تابع header وجود نداشته باشد. برای مثال ،

این اسکریپت یک خطای warning notice را به مرورگر ارسال می کند.

این “احتیاط” فقط در مورد تابع header در php نیست ، بلکه برای همه توابعی مثل set_cookie() ، session_start() و … صدق می کند . در واقع هر تابع مثل بالا که یک سری اطلاعات و تغییرات در هدر ارسالی از طرف ما به سرور اضافه می کند ، از قبل باید هیچ خروجی حتی یک کاراکتر کوچک . نداشته باشد ، چون باعث خطاهایی مثل

که یکی از خطاهای معروف php است در صفحه ظاهر می شود . این خطا جز warning هایی است که باعث break شدن کد های شما نمی شود . برای آشنایی با انواع حطاها در php این مقاله را حتما و حتما مطالعه کنید . به شما در شناسایی ، رفع باگ ها و خطاها بسیار کمک خواهد کرد .

مواردی که باعث خطای header می شوند

  • محتویات html مثل متن یا تگ ها
  • جاهای خالی غیرضروری قبل از تگ php
  • خطاها یا warning های قبل از اجرا شدن redirect
  • دستورات چاپ متنی مثل echo() ، print()

راه های مدیریت خطای output قبل از ریدایرکت با php

برای امنیت بیشتر بعد از اجرای دستور header ، exit را قرار بدیم

حتما بخوانید  نکات php که هر برنامه نویسی باید بداند

می توانید خاصیت output buffering را از طریق فایل پیکربندی php (php.ini) یا از طریق تابع ob_start() در اول کد هاتون قرار بدید.

استفاده از ریدایرکت و هدایت کاربر به یک صفحه دیگر از موارد خیلی مهم و جدانشدنی در php و پروژه های تحت وب است .

موفق باشید

اگر مفید بود, لطفا به اشترک بگذارید تا دوستان دیگر نیز بهره ببرند

حسن شفیعی
مدرس ، پنتستر ، توسعه دهنده اپلیکیشن های تحت وب ، عضو مرکز حامی نخبگان و از مدیران و اعضای رسمی تیم امنیتی آشیانه هستم . علاقه خاصی به زبان php و امنیت شبکه و لینوکس دارم و هر روز تلاش می کنم به این حوزه ها مسلط تر شوم و اطلاعاتم را در وب به اشتراک بگذارم

دیدگاه کاربران

2 پاسخ به “ریدایرکت با php”

  1. Arman Askari گفت:

    میتونم از ریدایرکت تو بات نویسی استفاده کنم؟ به عنوان مثال اگر پیام دریافتی شامل عکس بود ریدایرکت کنم به یه فایل php دیگه و عملیات مورد نظرم رو رو عکس انجام بدم
    header(‘location : image.php?img=simple’); exit

    0
    • حسن شفیعی گفت:

      سلام . نه متاسفانه امکان همچنین موردی نیست .
      راه خیلی بهتری به جای ریدایرکت وجود داره . کافیه مسیر فایل رو همراه با پارامتری دلخواهی به url مورد نظر اضافه کنید و بعد اون url رو با تابعfile_get_contents اجرا کنید تا خروجی شما انجام بشه.

      < ?php $id = 11; $file = 'http://site.com'.'/folder/image.php?img='.$id; file_get_contents($file);

      مثلا

      کاری که در ربات افکت عکسی که چندماه پیش طراحی کردیم انجام شده و به خوبی هم کار میکنه

      موفق باشید

      0

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دانلود رایگان (هدیه ویژه)

کتاب آموزش زبان برنامه نویسی PHP را دانلود و همین امروز یادگیری را شروع کن و به جمع برنامه نویسان ملحق شو ;)

دانلود رایگان کتاب

آموزش طراحی وب سایت

نظر کاربران عزیز

آموزش های آنلاین در چه زمینه ای تهیه کنیم ؟

  • آموزش جاوااسکریپت و جی کوئری (45%, 10)
  • آموزش ساخت ربات تلگرام (45%, 10)
  • آموزش بوت استرپ 4 (9%, 2)

تعداد رای ها : 22

Loading ... Loading ...

بخش کاربران

هنوز عضو نیستید ؟ کلیک کنید

مجوزهای ما


logo-samandehi نماد اعتماد الکترونیک

دانلود کتاب

عضویت در خبرنامه