سلام ، خسته نباشید
من فایل go.php رو نیاز دارم
فایلی که بعضی از سایتها ازش برای لینک دادن به سایت ها یا آدرسهای دیگه استفاده میکنن
ممنون میشم یکی از آقایون مهندس این فایلو به همراه نحوه استفاده ازش برام بذاره :11:
Printable View
سلام ، خسته نباشید
من فایل go.php رو نیاز دارم
فایلی که بعضی از سایتها ازش برای لینک دادن به سایت ها یا آدرسهای دیگه استفاده میکنن
ممنون میشم یکی از آقایون مهندس این فایلو به همراه نحوه استفاده ازش برام بذاره :11:
منظورتون redirect فايل است؟؟
نقل قول:
بله ، دقیقاً
کد این کار میشه مثل کد زیر:
یعنی از طریق این فایل بشه به یه سایت دیگه لینک دادکد:http://www.address1.com/go.php?http://www.address2.com
اميدوارم منظورتون اين باشه دوست عزيز:
[PHP]<?php
function go($link){
header('Location:'.$link);
}
go("google.com");
?>[/PHP]
مرسی ، اما این کد کار نمی کنه ، چون اصلاً کدش معنایی نداره و به آدرسی که گفته شده مراجعه میکنه ! یعنی یه آدرس تو دل یک سایت ، در صورتی که باید redirect بشه
یعنی وقتی کد زیر رو وارد میکنه از آدرس 1 به آدرس 2 بره:
من یه فایل هم تو اینترنت پیدا کردم که همین فایل go.php هست ، که البته اینم کار نمی کنه ، فکر کنم یه جای کدش بد نوشته شده که کد اجرا نمیشه، اینم این کد، ببین شما میتونی مشکلشو برطرف کنیکد:http://www.address1.com/go.php?http://www.address2.com
از بقیه دوستان هم دعوت به کمک میشهکد:$url = trim($_REQUEST['url']);
if ($url)
{
if (preg_match('#(http(s?)|ftp)://(.*?)#i', $url))
{
header("Location: $url");
}
else
{
echo 'Invalid URL.';
}
}
else
{
echo 'No URL.';
}
اشکال از کدها نیست اشکال از آدرستونه!
باید برای آدرس یک متغیر در نظر بگیرید و مقدار اون متغیر رو توی توابع ریدایرکت استفاده کنید.
مثلاً آدرس رو اینطوری بنویسید:
بعد دیگه توی تابع ریدایرکت میشه با REQUEST['url']_$ آدرس جدید رو به اسکرپت دادکد:http://www.address1.com/go.php?url=http://www.address2.com
اگر بخواید بدون نوشتن اسم متغیر در آدرس این کار رو انجام بدید باید از طریق htaccess برای آدرس یک الگو تعریف کنید که آدرس رو روی یک متغیر مشخص ریرایت کنه! (یا اینکه همه کوئری استرینگ رو برای پیدا کردن یک آدرس معتبر بررسی کرد!)
ممنون از لطفتون neopersia
ولی من دقیقاً نفهمیدم شما میگی چیو باید تغییر بدم ؛ اگه ممکنه این کد رو تغییر بده و همینجا اون رو بزار
بعد آدرس رو هم باید چه جوری نوشت
در واقع میخوام وقتی به کسی لینک میدم ، به این روش تو سایت بهش لینک بدم ، که وقتی کسی روی این لینک کلیک میکنه ، یه صفحه جدید باز بشه و اون لینک(سایت) رو اونجا ببینه ، نه اینکه سایت من بسته بشه و اون لینک نمایش داده بشه
مزیت اینکار:
1- باز موندن خود سایت
2- کم نشدن رتبه سایت
ممنون میشم اینکارو انجام بدید ، چون تو این ضمینه ضعیفم ، مرسی
استفاده از ریدایرکتور اصلاً ربطی به اون چیزی که شما میخواید نداره! از این روش استفاده می کنند تا لینکهای خروجی سایت رو محدود کنند حالا چه به دلیل سئو و چه تو مملکت خودمون به دلیل جلوگیری از فــیلتر شدن اشتباهی سایت و...
اونی که شما میخواید با اضافه کردن شناسه target به لینکها از طریق HTML امکان داره:
[html]
<a href="http:\\www.address2.com" target="_blank">link face</a>
[/html]
با استفاده از php نمیشه پنجره جدید باز کرد! تنها راه ممکن استفاده از جاوا اسکرپت هست و همونی که گفتم
دست شما درد نکنه ، این مشکل برطرف شد
اما اون مشکل فایل go.php چی شد ، آیا می تونید برطرفش کنید
تو اینترنت یه سرچ بکنید ، درباره فایل go.php بحث شده
تو سایتهای مختلف برای لینک دادن از این فایل استفاده میشه ، این فایل رو میزارن تو روت سایت و بعد به همون روش go.php? به سایتی که میخوان لینک میدن
امیدوارم دقیقاً متوجه منظورم شده باشید
مرسی
من متوجه شدم شما چی میگید ولی مثل اینکه شما منظور منو متوجه نشدید!نقل قول:
من میگم وقتی که اسم متغیر رو توی آدرس ننویسید چطوری توقع دارید که توی تابع ریدایرکت بتونید با نام متغیر url آدرس رو بگیرید؟!
این آدرسی هست که من دادم:
اینم تابعی هست که خودتون دادید:کد:http://www.address1.com/go.php?url=http://www.address2.com
اون قسمت رو هم که رنگی کردم اسم متغیر هست که باید تعریف بشه و توی آدرس شما وجود نداشت:کد:$url = trim($_REQUEST['url']);
if ($url)
{
if (preg_match('#(http(s?)|ftp)://(.*?)#i', $url))
{
header("Location: $url");
}
else
{
echo 'Invalid URL.';
}
}
else
{
echo 'No URL.';
}
کد:http://www.address1.com/go.php?http://www.address2.com