پاسخ : درخواست کد پی اچ پی گرفتن متغییر از آدرس سایت
کد:
<script type="text/javascript">
<?php
$squrl = null;
$urls = array(
'site1' => 'file1',
'site2' => 'file2',
'site3' => 'file3',
);
if( ! empty($_GET))
{
foreach ($_GET as $k=>$v)
{
if (array_key_exists($k,$urls))
{
$squrl = @$urls[$k];
break;
}
}
if($squrl) echo 'file: "'.$squrl.'",';
}
else
{
echo 'file: "defaultURL"';
}
?>
</script>
پاسخ : درخواست کد پی اچ پی گرفتن متغییر از آدرس سایت
خوابم میاد چشمام نمیبینه چی تایپ میکنم، تست کنید :
کد PHP:
<script type="text/javascript">
<?php
$squrl = null;
$urls = array(
'site1' => 'file1',
'site2' => 'file2',
'site3' => 'file3',
);
if(isset($_GET)) {
foreach ($_GET as $k=>$v) {
if (array_key_exists($k,$urls)) {
$squrl = @$urls[$k];
break;
}
}
if($squrl) echo 'file: "'.$squrl.'",';
} else echo 'file: "defaultURL"';
?>
</script>
پاسخ : درخواست کد پی اچ پی گرفتن متغییر از آدرس سایت
کد قرار داده شده توسط rezaonline.net جواب نداد!
کد قرار داده شده توسط دوست عزیز T.Toosi با کمی تغییر جواب داد.
یعنی الان با کد زیر در صورتیکه اشتباه متغییر ها را ارسال کنیم باز دیفالت را نمایش می دهد و در صورتیکه متغییر صحیح باشد آنرا نمایش می دهد
کد PHP:
<script type="text/javascript">
<?php
$squrl = null;
$urls = array(
'site1' => 'file1',
'site2' => 'file2',
'site3' => 'file3',
);
if(isset($_GET))
foreach ($_GET as $k=>$v) {
if (array_key_exists($k,$urls)) {
$squrl = @$urls[$k];
break;
}
}
if($squrl) echo 'file: "'.$squrl.'",';
else
{
echo 'file: "defaultURL",';
}
?>
</script>
لطفا چک کنید کد بالا از نظر صحیح بودن کد ها مشکلی ندارد
با تشکر
پاسخ : درخواست کد پی اچ پی گرفتن متغییر از آدرس سایت
با سلام
از دوستانی که لطف کردن و در تاپیک مشکل ما را برطرف کردن کمال تشکر را داریم
کد زیر :
کد PHP:
<script type="text/javascript">
<?php
$squrl = null;
$urls = array(
'site1' => 'file1',
'site2' => 'file2',
'site3' => 'file3',
);
if(isset($_GET))
foreach ($_GET as $k=>$v) {
if (array_key_exists($k,$urls)) {
$squrl = @$urls[$k];
break;
}
}
if($squrl) echo 'file: "'.$squrl.'",';
else
{
echo 'file: "defaultURL",';
}
?>
</script>
مشکل را برطرف کرده ولی یک مشکلی داریم در کد بالا تعریف کرده ایم
متغییر 'site1' برابر است با 'file1' است حال اگه بخواهیم متغییر 'site1' برابر چندین فایل باشد یعنی تعریف کنیم
کد PHP:
'site1' => 'file1',
'site1' => 'file1-2',
'site1' => 'file1-3',
'site1' => 'file1-4',
حال وقتی متعیر 'site1' را فراخوانی میکنم به صورت راندوم یکی از آدرس های file1 یا file1-2 یا file1-3 یا file1-4 را در هر بار فراخوانی به صورت راندوم قرار دهد.
با تشکر
پاسخ : درخواست کد پی اچ پی گرفتن متغییر از آدرس سایت
کد:
<script type="text/javascript">
<?php
$squrl = null;
$urls = array(
'site1' => array('file1', 'file1-2', 'file1-3'),
'site2' => 'file2',
'site3' => 'file3',
);
if(isset($_GET))
foreach ($_GET as $k=>$v) {
if($k == 'site1') {
$rand = array_rand($v, 1);
$squrl = $v[$rand[0]];
break;
}
if (array_key_exists($k,$urls)) {
$squrl = @$urls[$k];
break;
}
}
if($squrl) echo 'file: "'.$squrl.'",';
else
{
echo 'file: "defaultURL",';
}
?>
</script>
پاسخ : درخواست کد پی اچ پی گرفتن متغییر از آدرس سایت
T.Toosi عزیز با کمال تشکر از پاسخگویی شما
در کد بالا فکر کنم درصوتیکه site1 چند متغییر داشته باشد به صورت راندم نمایش داده میشود
در کل من میخواهم هر کدام یک از متغییر ها که تعریف میکنم به صورت متغییر باشد و شرایط زیر باشد
در صورتیکه متغییر به صورت زیر باشد
'site2' => 'file2', همان file2 نمایش داده شود ولی اگه چندین مورد بود آنها را به صورت راندوم نمایش داده شود و محدودیتی در تعداد نداشته باشد به طور مثال:
کد PHP:
'site1' => array('file1', 'file1-2'),
'site2' => array('file2'),
'site3' => array('file3', 'file3-2', 'file3-3', 'file3-4'),
'site4' => array('file4', 'file4-2', 'file4-3'),
'site5' => array('file5', 'file5-2', 'file5-3', 'file5-4', 'file5-5'),
به طور کلی متغیر تعرف شده مساوی یک آدرس یا چندین آدرس باشد و محدودیت در این مورد نباشد و در صورت داشتن یک آدرس آنرا نمایش داده و در صورت داشتن چندین آدرس یکی را به صورت راندوم انتخاب نماید
کد PHP:
<?php
$squrl = null;
$urls = array(
'site1' => array('file1', 'file1-2'),
'site2' => array('file2'),
'site3' => array('file3', 'file3-2', 'file3-3', 'file3-4'),
'site4' => array('file4', 'file4-2', 'file4-3'),
'site5' => array('file5', 'file5-2', 'file5-3', 'file5-4', 'file5-5'),
);
if(isset($_GET))
foreach ($_GET as $k=>$v) {
if($k == 'site1') {
$rand = array_rand($v, 1);
$squrl = $v[$rand[0]];
break;
}
if (array_key_exists($k,$urls)) {
$squrl = @$urls[$k];
break;
}
}
if($squrl) echo 'file: "'.$squrl.'",';
else
{
echo 'file: "defaultURL",';
}
?>
لطفا کد بالا را تصحیح کنید تا موارد فوق را بتوانیم انجام دهیم
سپاس
پاسخ : درخواست کد پی اچ پی گرفتن متغییر از آدرس سایت
کد PHP:
$squrl = null;
$urls = array(
'site1' => array('file1', 'file1-2'),
'site2' => array('file2'),
'site3' => array('file3', 'file3-2', 'file3-3', 'file3-4'),
'site4' => array('file4', 'file4-2', 'file4-3'),
'site5' => array('file5', 'file5-2', 'file5-3', 'file5-4', 'file5-5'),
);
if(isset($_GET))
foreach ($_GET as $k=>$v) {
if (array_key_exists($k,$urls)) {
$rand = array_rand($urls[$k], 1);
$squrl = $urls[$k][$rand];
break;
}
}
if($squrl) echo 'file: "'.$squrl.'",';
else
{
echo 'file: "defaultURL",';
}
?>