while ($row = mysql_fetch_assoc($all_users))
{
// по странной причине данные из обычных инпутов в этой
// форме не передавались - пришлось использовать hidden
// для передачи id
?>
<form action="users.php#bubble" method="POST">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=<?php echo $row['id']; ?> />
<input type=hidden name="option" value="edit" />
<tr>
<td><?php echo $row['id']; ?></td>
<td><?php echo $row['login']; ?></td>
<td><?php echo $row['permissions']; ?></td>
<?php echo edit_button(); ?>
<?php echo delete_button(); ?>
</tr>
</form>
<?php
}
[если вставить здесь, а потом закрыть форму эхом,
то вся форма не отправляет данные]
Если я размещаю кнопку добавления элемента в БД на отдельной форме, сразу за этими, то по какой-то причине эта вторая форма не отправляет данные. А если вставить кнопку(она вставляется функцией, ибо сначала проверяются условия для вставки) после цикла, то вся форма не передает данные. Вот кнопка.
function add_button()
{
if ($_SESSION['permissions'] == 1 or $_SESSION['permissions'] ==3 or
$_SESSION['permissions'] == 5 or $_SESSION['permissions'] ==7)
{
echo "<tr>
<td>
<input type='submit' name='button' class='buttonfield' value='добавить' form='users'>
</td>
</tr>
";
}
} // end of add_button
Причем, есть одна странность: если отправлять не постом, а гетом, то отправляются вообще все переменные со всех форм(строк)
Мне сказали, что проблема в том, что формы находятся в строках таблицы.
Попробовал убрать все упоминания о таблице в том месте вообще, но это ни чем не помогло. Забыл сказать - раньше все работало так, как есть, но после изменений, которые(вроде бы) не имели особого отношения к этому, все полетело к чертям. Я так и не смог понять что я такого сделал (
Спустя 14 минут, 9 секунд (25.07.2012 - 19:14) kamanch написал(а):
Формам все равно в таблицах они или нет.
Смотри что у тебя в html'е, там и увидишь ошибку
Смотри что у тебя в html'е, там и увидишь ошибку
Спустя 15 минут, 26 секунд (25.07.2012 - 19:29) inpost написал(а):
у тебя цикл и в нем ты каждый раз создаешь новую форму... Тебе именно это надо? Может ты хотел всев одну форму поместить???
Спустя 3 минуты, 59 секунд (25.07.2012 - 19:33) inpost написал(а):
форму нельзя открывать между тегами таблицы и тр... Это нераздельные теги... Тебе надо подучить хтмл, и не нарушая его понять действия циклов...
Спустя 44 минуты, 54 секунды (25.07.2012 - 20:18) Jaiton написал(а):
<html>
<head>
<meta charset="utf-8" />
<script></script>
<link href="css/form.css" rel="stylesheet" media="all" type="text/css" />
<link rel="stylesheet" type="text/css" href="css/popup.css">
</head>
<body>
<div id="border_users">
<div id="wrapper_users">
<table class="users" align="center">
<tr>
<th>id</th>
<th>Логин</th>
<th>Разрешения</th>
</tr>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=1 />
<input type=hidden name="option" value="edit" />
<tr>
<td>1</td>
<td>main</td>
<td>3</td>
<td border='0px'><input type='submit' name='button'
class='buttonfield' value='править' width=40></td> <td border='0px'><input type='submit' name='button'
class='buttonfield' value='удалить' width=40></td> </tr>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=28 />
<input type=hidden name="option" value="edit" />
<tr>
<td>28</td>
<td>assssss</td>
<td>0</td>
<td border='0px'><input type='submit' name='button'
class='buttonfield' value='править' width=40></td> <td border='0px'><input type='submit' name='button'
class='buttonfield' value='удалить' width=40></td> </tr>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=29 />
<input type=hidden name="option" value="edit" />
<tr>
<td>29</td>
<td>qwerty32</td>
<td>0</td>
<td border='0px'><input type='submit' name='button'
class='buttonfield' value='править' width=40></td> <td border='0px'><input type='submit' name='button'
class='buttonfield' value='удалить' width=40></td> </tr>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=15 />
<input type=hidden name="option" value="edit" />
<tr>
<td>15</td>
<td>aguaga</td>
<td>7</td>
<td border='0px'><input type='submit' name='button'
class='buttonfield' value='править' width=40></td> <td border='0px'><input type='submit' name='button'
class='buttonfield' value='удалить' width=40></td> </tr>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=16 />
<input type=hidden name="option" value="edit" />
<tr>
<td>16</td>
<td>quarry</td>
<td>5</td>
<td border='0px'><input type='submit' name='button'
class='buttonfield' value='править' width=40></td> <td border='0px'><input type='submit' name='button'
class='buttonfield' value='удалить' width=40></td> </tr>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=32 />
<input type=hidden name="option" value="edit" />
<tr>
<td>32</td>
<td>zxczcx</td>
<td>0</td>
<td border='0px'><input type='submit' name='button'
class='buttonfield' value='править' width=40></td> <td border='0px'><input type='submit' name='button'
class='buttonfield' value='удалить' width=40></td> </tr>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=33 />
<input type=hidden name="option" value="edit" />
<tr>
<td>33</td>
<td>asasd</td>
<td>0</td>
<td border='0px'><input type='submit' name='button'
class='buttonfield' value='править' width=40></td> <td border='0px'><input type='submit' name='button'
class='buttonfield' value='удалить' width=40></td> </tr>
</form>
<tr>
<td>
<form action='users.php?bubble' method='post'>
<input type='hidden' name='act' value='edit' />
<input type='hidden' name='option' value='edit' />
<input type='submit' name='button' class='buttonfield' value='добавить'>
</form>
</td>
</tr>
</table>
</div>
</div>
<div class="navigation">
<a href="auth.php?logout">Выйти</a> </div>
Страница выходит вот такой. Да, я хотел именно много форм. Вот только все формы здесь работают кроме последней, которая выводится отдельной функцией. Наверно я не вижу здесь какой-то глупой ошибки, но мой html и правда плоховат.
Спустя 1 час, 31 минута, 35 секунд (25.07.2012 - 21:50) Jaiton написал(а):
*</body> и </html> просто не вставились в пост
Спустя 1 час, 35 минут, 20 секунд (25.07.2012 - 23:25) inpost написал(а):
я выше написал, что нельзя разрывать теги таблицы!!!
Пока ты не исправил код так, чтобы они не рвали таблицу...
Пока ты не исправил код так, чтобы они не рвали таблицу...
Спустя 13 часов, 7 минут, 53 секунды (26.07.2012 - 12:33) Jaiton написал(а):
Я в самом первом посте писал, что мне это уже говорили и я пробовал убирать таблицу. Это не помогло. Еще писал, что с таблицей раньше тоже работало, но я так и не смог вернуть все назад, в рабочее состояние. Выходит дело в чем-то еще, кроме таблицы.
Спустя 1 час, 24 минуты, 46 секунд (26.07.2012 - 13:58) inpost написал(а):
я так понял ты тут самый умный и учить нас будешь в чем проблема тут... Ну-ну!
Я уже ответил, сделай полностью валидную верстку, тогда и поговорим. А пока тут ошибка именно в ней.
Я уже ответил, сделай полностью валидную верстку, тогда и поговорим. А пока тут ошибка именно в ней.
Спустя 27 минут, 17 секунд (26.07.2012 - 14:25) Jaiton написал(а):
<html>
<head>
<meta charset="utf-8" />
<script></script>
<link href="css/form.css" rel="stylesheet" media="all" type="text/css" />
<link rel="stylesheet" type="text/css" href="css/popup.css">
</head>
<body>
<div id="border_users">
<div id="wrapper_users">
id
Логин
Разрешения
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=1 />
<input type=hidden name="option" value="edit" />
1
main
3
<input type='submit' name='button' class='buttonfield' value='править' width=40>
<input type='submit' name='button' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=28 />
<input type=hidden name="option" value="edit" />
28
assssss
0
<input type='submit' name='button' class='buttonfield' value='править' width=40>
<input type='submit' name='button' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=29 />
<input type=hidden name="option" value="edit" />
29
qwerty32
0
<input type='submit' name='button' class='buttonfield' value='править' width=40>
<input type='submit' name='button' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=15 />
<input type=hidden name="option" value="edit" />
15
aguaga
7
<input type='submit' name='button' class='buttonfield' value='править' width=40>
<input type='submit' name='button' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=16 />
<input type=hidden name="option" value="edit" />
16
quarry
5
<input type='submit' name='button' class='buttonfield' value='править' width=40>
<input type='submit' name='button' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=32 />
<input type=hidden name="option" value="edit" />
32
zxczcx
0
<input type='submit' name='button' class='buttonfield' value='править' width=40>
<input type='submit' name='button' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" name="users">
<input type=hidden name="act" value="edit" />
<input type=hidden name="id" value=33 />
<input type=hidden name="option" value="edit" />
33
asasd
0
<input type='submit' name='button' class='buttonfield' value='править' width=40>
<input type='submit' name='button' class='buttonfield' value='удалить' width=40>
</form>
<form action='users.php?bubble' method='post'>
<input type='hidden' name='act' value='edit' />
<input type='hidden' name='option' value='edit' />
<input type='submit' name='button' class='buttonfield' value='добавить'>
</form>
</div>
</div>
<div class="navigation">
<a href="auth.php?logout">Выйти</a> </div>
</body>
</html>
Сэр, ваши комплименты сегодня слишком щедры )) Вот, никаких таблиц и никакой работоспособности в том же месте.
Спустя 6 минут, 15 секунд (26.07.2012 - 14:31) inpost написал(а):
я не верю, что в3ц и на что не ругается и у тебя валидная верстка, потомучто я даже сейчас вижу ошибки.
И второе, новый код я вижу, что не работает сейчас в нем?
И второе, новый код я вижу, что не работает сейчас в нем?
Спустя 51 секунда (26.07.2012 - 14:32) sergeiss написал(а):
У тебя одинаковый name="users" у всех форм. Тебя это не смущает нисколько? :)
PS. Да не только у формы!!! У тебя много однотипных элементов с одинаковыми именами. А они должны быть уникальными.
PPS.
А вот это - вообще просто СУПЕР :) Я очень за твои формы порадовался ;)
PS. Да не только у формы!!! У тебя много однотипных элементов с одинаковыми именами. А они должны быть уникальными.
PPS.
А вот это - вообще просто СУПЕР :) Я очень за твои формы порадовался ;)
<input type='submit' name='button' class='buttonfield' value='править' width=40>
<input type='submit' name='button' class='buttonfield' value='удалить' width=40>
Спустя 4 минуты, 47 секунд (26.07.2012 - 14:37) Jaiton написал(а):
Это я уже экспериментировал) добавил совсем недавно, саму переменную я никак не использую.
З.Ы. с ней и без нее работает тоже одинаково.
З.Ы. с ней и без нее работает тоже одинаково.
Спустя 2 минуты, 7 секунд (26.07.2012 - 14:39) Jaiton написал(а):
А как же чекбоксы и радио переключатели? Их часто делают именно с одинаковыми именами и разными значениями. Да и к тому же эти формы с двумя кнопками прекрасно работают.
Спустя 2 минуты, 37 секунд (26.07.2012 - 14:42) Jaiton написал(а):
Не работает только самая последняя форма с кнопкой добавления. Блин, все ответы мои в кучу вышли - не понятно кому отвечаю. Там, где писал, что экспериментировал - это про name самих форм.
Спустя 13 минут, 39 секунд (26.07.2012 - 14:55) inpost написал(а):
мы много сказали, теперь исправь все. И еще - свойства атрибутов тегов необходимо писать в двойных кавычках. Плюс не работает - я не понимаю что именно. Кнопка не нажимается или данные не передаются... Исправь все и будем дальше разбираться!
Спустя 3 минуты, 26 секунд (26.07.2012 - 14:59) sergeiss написал(а):
Jaiton - я тебе в явном виде указал на твою ошибку, на то, что не надо делать разные элементы с одинаковым именем. Ты считаешь, что всё прекрасно работает. Так в чем вопрос, если "прекрасно работает"? Мы тебе не сможем помочь, ты и так лучше всё знаешь
PS. И кнопка на добавление имеет то же самое имя, что и все остальные. Тебя в это надо "ткнуть носом" или ты сам догадаешься, что имя надо сделать уникальным для этой страницы?
PS. И кнопка на добавление имеет то же самое имя, что и все остальные. Тебя в это надо "ткнуть носом" или ты сам догадаешься, что имя надо сделать уникальным для этой страницы?
Спустя 4 часа, 33 минуты, 37 секунд (26.07.2012 - 19:32) Jaiton написал(а):
Я написал все, что не работает и как это происходит в первом посте. Попросту POST, отправленный из этой формы - пуст(его содержимое выводится полностью в файле, на который отправляет данные форма. С остальных форм выводится все так, как и должно). Я изменил код так, чтобы все имена были уникальными и оставил старые(которые будут обрабатываться) только у той, которая не работает. Не изменилось ничего. Надеюсь на этом закончится неверие в то, что проблема еще в чем-то и повторюсь - это работало и с одинаковыми именами и с таблицей.
<html>
<head>
<meta charset="utf-8" />
<script></script>
<link href="css/form.css" rel="stylesheet" media="all" type="text/css" />
<link rel="stylesheet" type="text/css" href="css/popup.css">
</head>
<body>
<div id="border_users">
<div id="wrapper_users">
id
Логин
Разрешения
<form action="users.php#bubble" method="POST" >
<input type=hidden name="act1" value="edit" />
<input type=hidden name="id1" value=1 />
<input type=hidden name="option1" value="edit" />
1
main
3
<input type='submit' name='button1' class='buttonfield' value='править' width=40>
<input type='submit' name='button2' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" >
<input type=hidden name="act2" value="edit" />
<input type=hidden name="id2" value=28 />
<input type=hidden name="option2" value="edit" />
28
assssss
0
<input type='submit' name='button3' class='buttonfield' value='править' width=40>
<input type='submit' name='button4' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" >
<input type=hidden name="act3" value="edit" />
<input type=hidden name="id3" value=29 />
<input type=hidden name="option3" value="edit" />
29
qwerty32
0
<input type='submit' name='button5' class='buttonfield' value='править' width=40>
<input type='submit' name='button6' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" >
<input type=hidden name="act4" value="edit" />
<input type=hidden name="id4" value=15 />
<input type=hidden name="option4" value="edit" />
15
aguaga
7
<input type='submit' name='button7' class='buttonfield' value='править' width=40>
<input type='submit' name='button8' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" >
<input type=hidden name="act5" value="edit" />
<input type=hidden name="id5" value=16 />
<input type=hidden name="option5" value="edit" />
16
quarry
5
<input type='submit' name='button9' class='buttonfield' value='править' width=40>
<input type='submit' name='button10' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST">
<input type=hidden name="act6" value="edit" />
<input type=hidden name="id6" value=32 />
<input type=hidden name="option6" value="edit" />
32
zxczcx
0
<input type='submit' name='button11' class='buttonfield' value='править' width=40>
<input type='submit' name='button12' class='buttonfield' value='удалить' width=40>
</form>
<form action="users.php#bubble" method="POST" >
<input type=hidden name="act7" value="edit" />
<input type=hidden name="id7" value=33 />
<input type=hidden name="option7" value="edit" />
33
asasd
0
<input type='submit' name='button13' class='buttonfield' value='править' width=40>
<input type='submit' name='button14' class='buttonfield' value='удалить' width=40>
</form>
<form action='users.php?bubble' method='POST'>
<input type='hidden' name='act' value='edit' />
<input type='hidden' name='option' value='edit' />
<input type='submit' name='button' class='buttonfield' value='добавить'>
</form>
</div>
</div>
<div class="navigation">
<a href="auth.php?logout">Выйти</a> </div>
</body>
</html>
Спустя 13 часов, 12 минут, 47 секунд (27.07.2012 - 08:45) sergeiss написал(а):
ОК... Напиши в users.php одну строку:
И покажи, что там будет при нажатии последней кнопки.
У меня твой код работает. С той разницей только, что я не знаю, как ты проверяешь, что ничего не происходит :) У меня - нужные данные приходят в скрипт.
exit('<pre>'.print_r( $_POST, true).'</pre>');
И покажи, что там будет при нажатии последней кнопки.
У меня твой код работает. С той разницей только, что я не знаю, как ты проверяешь, что ничего не происходит :) У меня - нужные данные приходят в скрипт.