وبلاگ شخصی فربد صنیعی

وب نوشت های فربد صنیعی

وبلاگ شخصی فربد صنیعی

وب نوشت های فربد صنیعی

تمامی وب نوشت های من (فربد صنیعی) در این وبلاگ قرار میگیرند.

طبقه بندی موضوعی
بایگانی

آموزش : ساخت یک انتقال دهنده لینک ساده با php

جمعه, ۱۶ فروردين ۱۳۹۲، ۰۸:۲۱ ب.ظ
با سلام! در این آموزش قصد ساخت یک انتقال دهده لینک ساده با زبان پی اچ پی (PHP) رو داریم.
برای دیدن آموزش بصورت متنی، به ادامه مطلب مراجعه فرمایید. سوالی هم بود در خدمتتون هستم. (در بخش نظرات ...)

اول در مورد کارایی انتقال دهنده بهتون میگم بعد ممیریم سر آموزش:
شاید شما سایت هایی رو دیدید که وقتی میخوان به سایتی لینک بدن لینک متن Hyperlink شده یا یه سری کد های عجیب و غریبه مثل این :

http://go.example.org/?linkhash=df46efb6cd5316137984612eab855edde92eee69
یا مثل این هست :

http://go.example.org/?linkid=38
# در این نوع از انتقال دهنده ها، از دیتابیس هم استفاده می شود که آموزش ساختش در پست های بعدی قرار میگیرد.

 
یا ساده تراز دومی :

http://go.example.org/?link=http%3A%2F%2Fwww.google.com
خوب چون سطح آموزش مبتدی هست آموزش رو اختصاص میدیم به نوع سومیش.

شروع آموزش


زمان آموزش : بین 5 تا 15 دقیقه
سطح آموزش : مبتدی

دایرکتوری مورد نظرتونو برای ساخت انتقال دهنده ایجاد کنید.
فایلی بنام index.php ایجاد میکنیم.

ابتدا ساختار کوتاه کننده رو در نظر داشته باشید :
برای مثال ما میخواهیم با انتقال دهنده لینک، به سایت گوگل برویم:

http://localhost/redirector/?http://www.google.com
خوب،

http://localhost/redirector/
محل انتقال دهندست و با مقدار بعد از از علامت (؟) مشخص میشه میریم به کدوم سایت.

خوب ابتدا باید مقدار بعد از علامت سوال رو با متد سرور بگیریم:

$_SERVER['QUERY_STRING']
خوب،
QUERY_STRING
که عضو آرایه درونی (اینکلود شده) سرور است، مقدار درون آدرس صفحه را به ما نشان میدهد.
من بدلیل اینکه url مون پیچیده نشه از $_get استفاده نمی کنم.

کد های فایل ایندکس :

<?php
$url = $_SERVER['QUERY_STRING'];
header ("Location: {$url}");
?>

در خط اول، تگ پی اچ پی رو باز می کنم.

در خط دوم، lمتغیر url رو برابر با مقدار آدرس صفحه می کنم.

در خط سوم، هدر لوکیشن صفحه رو برابر با متغیر url میکنیم.

در خط چهارم، پی اچ پی بسته میشود.


حالا شما سیوش کنید و اون رو امتحان کنید:

http://localhost/redirector/?http://www.google.com

بجای

http://localhost/redirector/

آدرس محل اسکریپت و بجای

http://www.google.com

آدرس سایت مورد نظرتون.


بیاین یکم پیشرفتش کنیم:

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

به نمونه زیر نگاهی بندازید :

<?php
$url = $_SERVER['QUERY_STRING'];
if (isset($url) && $url !="" && $url != NULL) {
header ("Location: {$url}");
}
else {
echo ("مقدار یو آر ال خالی میباشد!");
}
?>

این یکی رو هم ببینید :

<?php
$url = $_SERVER['QUERY_STRING'];
if (!$url) {
exit ("مقدار یو آر آل برابر با رشته null میباشد");
}
else {
header ("Location: {$url}");
}
?>

هر دو یک کارو میکنن ولی در اولی احتمال خطا نسبت به دومی کمتر هست.

خوب این آموزش هم به پایان رسید و منتظر آموزش های بعدی باشید.


کپی برداری هم مشکلی نداره، اما؛

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

نظرات  (۹)

املات کلا با قوائد دستوریش تو حلقم :))
در ضمن...وقتی بیان خودش یه انتقال دهنده داره چه احتیاجی به PHP داریم؟ رو یه لینکی کلیک کن و بعد هم بازم موس رو ببر روش....خودب میبینیش...
ولی مطلب خوبی بود :-*
پاسخ:
داداش من، در این آموزش کاری به بیا بلاگ نداریم کلا.
این مختص میشه به پی اپ پی اولا؛ یعنی تو وب سرور اجرا میشه فقط نه تو وبلاگ، مثل اینه که بخوای یه تکه کد پرل رو بزاری تو ادیتور رزبلاگ!
دوما زبان برنامه نویسی بیان ترکیبی از Python, PHP است!
در مورد جمله آخر هم بگم نظر لطفته. :-*
آپیدیم! حتما بیا!
ممنون ممنون و بازم ممنون...

شما متولد چه ماهی هستین؟
آموزش فوق العاده بود . کل سایت های خارجی و stackoverflow رو زیر رو کردم ولی هیچ چیز به درد بخور و واضحی نبود

با همین آموزش ساده و کمی تغییرات دقیقا همون چیزی که مدنظرم بود ساختم !

متشکر :-x
ممنونم مرسی
بسیار خوب و مفید بود... تشکر 
در ضمن وبلاگ زیبایی دارین...خوشمان آمد! :D
سلام
چطور میشه زمان شمار گذاشت

همانند انتقال دهنده لینک پرشین اسکریپت

لطفا به ایمیل من پاسخ دهید
  • ♥☀♥☀♥ اس ام اس 2 اس تی اس ♥☀♥☀♥
  • سلام

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

    میشه بگین چطوری این کارو بکنم؟

    درضمن اینم بگم که جاوا فعال نیست ):
  • کوتاه کننده لینک گوگل
  • سلام ممنونم مطلب فوق العاده ای بود با تشکر 

    ارسال نظر

    ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
    شما میتوانید از این تگهای html استفاده کنید:
    <b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
    تجدید کد امنیتی