Submit По ссылке
Добрый день!
Столкнулась со следующей проблемой. Есть форма:
echo '<form name="form_podrobno" id="form_podrobno" method="post" action="http://mysite.ru/podrobno">
<table>';
$spisok=mysql_query("SELECT * FROM `mytable`");
while($row = mysql_fetch_array($spisok))
{
printf ('
<tr>
<td>%s</td>
<td><input type="hidden" name="id" value='.$row['id'].'>%s</td>
<td>%s<br/><a href="#" onclick="document.form_podrobno.submit(); return false;"> Подробно </a></td>
<td >%s</td>
</tr>',$row['stb1'],$row['stb2'],$row['stb3'],$row['stb3']);
}
echo '</table></form>';
Всю таблицу верно выводит. Но когда по этой самой ссылке щелкаю, он должен брать id строки (он тоже есть в таблице) и по этому id на другой странице выводится вся дополнительная информация. Так вот, у меня по щелчку на ссылку любой строки берется первый id таблицы, т.е. выводится информация строки с меньшим id... Бьюсь, бьюсь... Подскажите, пожалуйста, в чем моя ошибка? Заранее большое спасибо. |
Блин, теперь поняла, конечно, где ошибка, но дальше заело.
echo '<form name="form_podrobno" id="form_podrobno" method="post" action="http://mysite.ru/podrobno">
<table>';
$spisok=mysql_query("SELECT * FROM `mytable`");
while($row = mysql_fetch_array($spisok))
{
printf ('
<tr>
<td>%s</td>
<td><input type="hidden" name="id[]" id="id" value='.$row['id'].'>%s</td>
<td>%s<br/><a href="#" onclick="document.form_podrobno.submit(); return false;"> Подробно </a></td>
<td >%s</td>
</tr>',$row['stb1'],$row['stb2'],$row['stb3'],$row['stb3']);
}
echo '</table></form>';
Получаю массив id для все строк таблицы. Но теперь как определить по какой строке мы щелкнули? Вернее, как это передать!? |
вот так "можно"
echo '
<script type="text/javascript">
function mySubmit(n){
var f=document.forms["form_podrobno"];
f["id"].value=n;
f.submit();
}
</script>
<form name="form_podrobno" id="form_podrobno" method="post" action="http://mysite.ru/podrobno">
<input type="hidden" name="id" value='.$row['id'].'>%s</td>
...
printf ('
<tr>
<td>%s</td>
<td>%s</td>
<td>%s<br/><a href="#" onclick="mySubmit(\"'.$row['id'].'\"); return false;"> Подробно </a></td>
...
|
:-? Мммм, тогда по клику ничего не происходит...
|
В общем, описанное адаптировать у меня не хватило толку. Ну не переходит у меня на нужную страницу. Решение нашла. Пусть временное, но рабочее. Буду совершенствоваться и буду совершенствовать.
Если кому-нибудь пригодится, вот рабочий вариант:
echo '
<table>';
$spisok=mysql_query("SELECT * FROM `mytable`");
while($row = mysql_fetch_array($spisok))
{
printf ('
<tr>
<td>%s</td>
<td>%s</td>
<td>%s<br/><a href="http://mysite.ru/podrobno?num='.$row['id'].'" onclick="document.submit(); return false;"> Подробно </a></td>
<td >%s</td>
</tr>',$row['stb1'],$row['stb2'],$row['stb3'],$row['stb3']);
}
echo '</table>';
На странице "Подробнее" $url=$_SERVER['REQUEST_URI']; и дальше стандартными функциями php беру последний параметр из этой строки. |
| Часовой пояс GMT +3, время: 08:38. |