انجمنهای فارسی اوبونتو
کمک و پشتیبانی => برنامهسازی => نویسنده: rahmani در 01 اسفند 1390، 03:19 بظ
-
سلام فرض کنید می خواهیم در یک site با استفاده از نوع image وقتی کاربر روی یکی از دو تصویر 1و2 click کرد مرورگر به صفحه ای دیگر هدایت شود و سپس بر حسب انتخاب کاربر(تصویر مورد نظر) اعمال متفاوتی روی دهد
جالب است بدانید من این کار را روی server محلی بخوبی انجام دادم اما در server واقعی متاسفانه فقط طول و عرض تصویر فرستاده می شود ::)
مثال :صفحه اول
<input type = 'image' src ='....../1.gif' name = 'select' value = 'first'>
<input type = 'image' src ='....../2.gif' name = 'select' value = 'secend'>
,صفحه دوم:
$select = $_GET['select']
.....
با تشکر
-
از input استفاده نکن، به جاش هایپر لینک بده. مثلا
<a href='secondpage.php?select=first'><img src='…/1.gif'></a>
<a href='secondpage.php?select=second'><img src='…/2.gif'></a>
-
از input استفاده نکن، به جاش هایپر لینک بده. مثلا<a href='secondpage.php?select=first'><img src='…/1.gif'></a>
<a href='secondpage.php?select=second'><img src='…/2.gif'></a>
سلام
با تشکر و ممنون
آخه مشکل اینجاست که من میخوام همراه با این تصاویر یک مقدار انتخابی توسط کاربر هم بفرستم
یعنی
<form method = 'GET' action = 'index.php'>
<?php
if ($showWay == 'number' && $count > $number) {
?>
<select name = 'number'>
<option selected value = '<?php echo $number; ?>'><?php echo $number; ?></option>
<option value = 1>1</option>
<option value = 2>2</option>
<option value = 3>3</option>
<option value = 4>4</option>
<option value = 5>5</option>
<option value = 10>10</option>
</select>
<input type = 'image' src ='....../1.gif' name = 'select' value = 'first'>
<input type = 'image' src ='....../2.gif' name = 'select' value = 'second'>
</form>
<?php
-
خب منطق وب میگه در این موارد باید کنار عکسهات radio button بذاری، چون در غیر این صورت کاربر نمیفهمه کدوم عکس انتخاب شده
-
کارت به شکل کلی درست بوده. ولی به جای اینکه ولیوها رو عوض کنی nameها رو تغییر بده. یعنی چند تا name متفاوت داشته باش و اونطرف چک کن که آیا متغیری به این اسم وجود داره یا نه. در ضمن چون متد get داری، دیباگ باید خیلی راحت باشه که. دقیق می بینی چی داره منتقل می شه اونطرف.
-
کارت به شکل کلی درست بوده. ولی به جای اینکه ولیوها رو عوض کنی nameها رو تغییر بده. یعنی چند تا name متفاوت داشته باش و اونطرف چک کن که آیا متغیری به این اسم وجود داره یا نه. در ضمن چون متد get داری، دیباگ باید خیلی راحت باشه که. دقیق می بینی چی داره منتقل می شه اونطرف.
این کار را هم کردم اما متاسفانه این بار هم طول و عرض تصویر را می فرستد فقط نام آن فرق کرده است
یعنی فرض کنید که دو تصویر را با نام های first و second نام گذاری کرده ایم این بار بجای این که select-x , select-y را بفرستد در صورتی که تصویر اولی را کلیک کند first-x , first-y و در صورتی که تصویر ادومی را کلیک کند second-x , second-y را می فرستد
در ضمن نشانی این site است برای مشاهده بهتر مشکل می توانید به آن هم نگاهی بیندازید
http://store.ir01.ir/store/admin/article/index.php
تشکر و ممنون
-
سلام توی تست من هم مشکل داشت البته طول عرض تصویر رو نمیداد x , y بود انگار
این کد رو تست کنید اگه مشکلی بود درخدتم
<?php
echo $_GET['number'];
?>
<form id="form" method='GET' >
<select id="number" name='number'>
<option value = 1>1</option>
<option value = 2>2</option>
</select>
<a href="#" onclick="document.getElementById('number').selectedIndex=0;document.getElementById('form').submit();"><img src="images/1.jpg"/></a>
<a href="#" onclick="document.getElementById('number').selectedIndex=1;document.getElementById('form').submit();"><img src="images/2.jpg"/></a>
</form>
البته این کد میتونه بهتر باشه
<?php
if($_GET['selectedImage'] == 1)
{
echo "1";
}
else if($_GET['selectedImage'] == 2)
{
echo "2";
}
?>
<form id="form" method='GET' >
<input id="selectedImage" name="selectedImage" type="hidden"/>
<a href="#" onclick="document.getElementById('selectedImage').value=1;document.getElementById('form').submit();"><img src="images/1.jpg"/></a>
<a href="#" onclick="document.getElementById('selectedImage').value=2;document.getElementById('form').submit();"><img src="images/2.jpg"/></a>
</form>