<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру

PHP и MySQL с Нуля до Гуру

Данный курс - это более 20-ти часов видеоуроков по изучению PHP и MySQL. Ключевой момент курса - это создание движка для сайта с нуля. Каждая строчка комментируется. Практически для каждого урока имеются упражнения. Причём данные упражнения направлены не только на закрепление материала, но и на реализацию реальных задач, встающих перед Web-разработчиками при создании сайтов. После курса Вы сможете без проблем создавать движки для любых сайтов.

Также почти к каждому уроку идут упражнения для закрепления материала.

Просмотрев курс и выполнив упражнения, Вы сможете без проблем создавать функциональные движки для самых различных сайтов.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

форма в цыкле или как поймать значение без формы :)
18.11.2013 19:37:09 форма в цыкле или как поймать значение без формы :) Сообщение #1
gigahertz

gigahertz

Новичок

Новичок

Дата регистрации:
29.10.2013 02:07:03

Сообщений: 12

Доброго времени суток. Не знаю как правильно сформулировать вопрос но попробую есть цыкл в котором выводиться n-ное количество раз тег инпут со значением которое должно апдейтится с помощью кнопки.

$get_all= get_con_on_page($page);
for ($i=0; $i<count($get_all); $i++){
$id = $get_all["$i"]["id"];
$content = $get_all["$i"]["content"];
$list = $get_all["$i"]["list"];
?>
<input type="text" name="list" value="<? echo $list ?>"/></br>
<input type="button" value="изменить"/>
<div><?php echo $content ?></div>
<hr/>
<?php
}
?>

Как поймать измененное значение тега не используя форму. Ну или как использовать форму если <input type="text" и <input type="submit" находятся внутри цыкла. может быть вопрос глупый но...
Профиль Ответить
18.11.2013 21:40:35 форма в цыкле или как поймать значение без формы :) Сообщение #2
tikkiwiki

tikkiwiki

Модератор

Модератор

Дата регистрации:
15.11.2013 15:36:59

Сообщений: 194

Попробуйте использовать конструкцию switch и case для перебора элементов. Я не совсем, если честно понял Ваш вопрос, что Вы хотите?
Профиль Ответить
18.11.2013 21:53:41 форма в цыкле или как поймать значение без формы :) Сообщение #3
gigahertz

gigahertz

Новичок

Новичок

Дата регистрации:
29.10.2013 02:07:03

Сообщений: 12

В базе есть поле list которое по дефолту не имеет значения. В цыкле я перебераю масив (таблицу базы) и каждый раз в цыкле вывожу на экран значение поля list в тег <input type="text" /> после которого вывожу кнопку которая будет менять значение list на то что было записано в этот тег. Вопрос в том как поймать значение на которое надо заменить list и как поймать Id именно того list который был переписан если все это в цыкле.
Профиль Ответить
19.11.2013 13:52:55 форма в цыкле или как поймать значение без формы :) Сообщение #4
tikkiwiki

tikkiwiki

Модератор

Модератор

Дата регистрации:
15.11.2013 15:36:59

Сообщений: 194

Уважаемый gigahertz. К сожалению я не имею достаточно времени, чтобы разобраться в Вашей проблеме, но как оно появиться, я постараюсь Вам помочь.

Так же рекомендую к прочтению данную статью:
http://support.myrusakov.ru/article?id=11
Профиль Ответить
19.11.2013 14:39:53 форма в цыкле или как поймать значение без формы :) Сообщение #5
LLIMATKO

LLIMATKO

Эксперт

Эксперт

Дата регистрации:
12.02.2013 15:31:03

Сообщений: 129

так я попытался втыкнуть или как говорят либо я не втыкаю либо лыжи не едут.

Поидее когда вы перебираете базу(массив) вы его должны переберать через foreach, а там вы получаете строку row из которой мы достаем list и id. Добавьте в цикл помимо Inputa с текстом еще один input hidden и в него забивайте id.У вас получится повторение input text, input hidden и кнопка. И когда будет нажимать кнопку будете передавать 3 поля - кнопку, input text и hidden. Дальше я думаю догадались

Если не так понял - извините)
Профиль Ответить
19.11.2013 15:10:22 форма в цыкле или как поймать значение без формы :) Сообщение #6
gigahertz

gigahertz

Новичок

Новичок

Дата регистрации:
29.10.2013 02:07:03

Сообщений: 12

Спасибо =) но ксожалению я не понял как именно записать в post или get эти значения =)

<form name="" action="" method="post">
<input type="text" name="" value="<? echo $list ?>" /></br>
<input type="hidden" value="<? echo $id ?>"/>
<input type="submit" value="изменить"/>
</form>

эта форма находится внутри цыкла и я не знаю даже правильно ли это. Может надо через get передавать, а если через get то как, или делать 1 форму, а инпуты делать внутри цыкла?
Профиль Ответить
19.11.2013 16:22:42 форма в цыкле или как поймать значение без формы :) Сообщение #7
LLIMATKO

LLIMATKO

Эксперт

Эксперт

Дата регистрации:
12.02.2013 15:31:03

Сообщений: 129

Как вы перебираете базу в цикле?
Профиль Ответить
19.11.2013 17:31:06 форма в цыкле или как поймать значение без формы :) Сообщение #8
gigahertz

gigahertz

Новичок

Новичок

Дата регистрации:
29.10.2013 02:07:03

Сообщений: 12

Проблему решил но не полностью. Я в цыкле создаю несколько форм и action делаю на другой файл - обработчик который потом делает редирект. Но появился странный баг первый сабмит в цыкле передает данные в масив get, а остальные в post хотя в форме прописано method="post" и это 1 и таже форма просто с разными даными в input hidden.

<?php
$get_all= get_con_on_page($page);
for ($i=0; $i<count($get_all); $i++){
$id = $get_all["$i"]["id"];
$content = $get_all["$i"]["content"];
$list = $get_all["$i"]["list"];
?>
<form name="title_list_form" action="edit_title_list.php" method="post">
<input type="text" name="title_list" value="<? echo $list ?>" /></br>
<input type="hidden" name="hide_id" value="<? echo $id ?>" />
<input type="hidden" name="hide_page" value="<? echo $page ?>" />
<input type="submit" name="change_title_list" value="изменить"/>
</form>
<div><?php echo $content ?></div>
<?php
}
?>

// файл обработчик

<?php
require_once "../start.php";
if(isset($_POST["change_title_list"])){
print_r($_POST);
$all_is_ok = update_title_list($_POST["hide_page"], $_POST["title_list"], $_POST["hide_id"]);
if($all_is_ok){
?>
<script>
alert('norm');
</script>
<meta http-equiv="refresh" content="0; url=edit_content.php?page_name=<?php echo $_POST["hide_page"] ?>">

<?php
}
else {
?>
<script>alert('fail');</script>
<meta http-equiv="refresh" content="0; url=edit_content.php?page_name=<?php echo $_POST["hide_page"] ?>">
<?php
}
}
?>

ахаха аж стыдно оказывается я просто не закрыл тег форм =) ище раз спасибо за совет с hidden сейчас все работает отлично =)
Профиль Ответить