Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/86: Рейтинг темы: голосов - 86, средняя оценка - 4.83
 Аватар для __bool
288 / 229 / 27
Регистрация: 13.06.2010
Сообщений: 744

Форма с POST-запросом, добавить переменную в запрос

05.03.2012, 18:48. Показов 17446. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток.
К примеру такая форма:
HTML5
1
2
3
4
5
<form method="post" action="add_article.php"> 
    Заголовок:
    <input type="text" name="title" size="90" maxlength="50" value="">
    <input type="submit" name="btnAddArticle" value="Добавить">
</form>
Получаю данные:
PHP
1
2
3
4
<?php
if (isset($_POST['title'])) {$title = $_POST['title'];}
// Нужно еще получить $id
?>
Вопрос:
Как, помимо значений объектов формы, отправлять свои переменные в Post-запросе?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.03.2012, 18:48
Ответы с готовыми решениями:

Программно добавить переменную в POST запрос
Здравствуйте. Кто-нибудь подскажет, можно ли добавить в POST запрос переменную, сформированную не посредством какого-либо элемента формы...

Отправить переменную POST запросом
Как отправить переменную POST запросом, одновременно с загрузкой фото. Есть скрипт загрузки фото (function($){ var files; //...

Как добавить переменную в этом коде (Форма заказа php)
Доброго времени суток! делал все по шаблону вот с этой темы https://www.cyberforum.ru/php-beginners/thread895963.html получилось) ...

16
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
05.03.2012, 18:52
__bool, можно с помощью скрытых INPUT'ов:
HTML5
1
<input type="hidden" name="skritiy_object" value="Это данные из скрытого инпута">
1
 Аватар для __bool
288 / 229 / 27
Регистрация: 13.06.2010
Сообщений: 744
06.03.2012, 00:20  [ТС]
Lyodik, Спасибо)
А есть способы решить следующую проблему?
Проблема:
Обработка данных формы происходит в отдельном php файле..
Action формы выполняет Post запрос, вызывая этот файл,
В результате отображается пустая страница, что вполне очевидно
Так вот.. Как бы сделать так, чтоб запрос отправлялся, но страница оставалась та что открыта?
Появилась мысль сделать редирект из php обратно.. но это не то..
0
 Аватар для allukard
307 / 218 / 70
Регистрация: 08.11.2010
Сообщений: 1,900
06.03.2012, 07:15
HTML5
1
2
3
4
5
6
<form method="post"> 
        Заголовок:
        <input type="text" name="title" size="90" maxlength="50" value="">
<input type="hidden" name="skritiy_object" value="<? $id ?>">
        <input type="submit" name="btnAddArticle" value="Добавить">
</form>
PHP
1
2
3
4
5
6
<?php
if(isset($_POST['sbtnAddArticle'])){
if (isset($_POST['title'])) {$title = $_POST['title'];}
// Нужно еще получить $id
}
?>
в одном файле
1
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
06.03.2012, 10:21
Цитата Сообщение от __bool Посмотреть сообщение
Так вот.. Как бы сделать так, чтоб запрос отправлялся, но страница оставалась та что открыта?
Можно поместить код-обработчик и код с формой в один файл...
1
 Аватар для __bool
288 / 229 / 27
Регистрация: 13.06.2010
Сообщений: 744
06.03.2012, 11:11  [ТС]
Не понимаю, если обработчик будет в файле с формой, то он запустится при создании формы, требуется ведь при нажатии на кнопку, нужно как-то привязать php-обработчик к submit?

Добавлено через 2 минуты
Как должна выглядеть эта строка?
HTML5
1
<form name="frmAddArticle" method="post" action = "add_article.php" onsubmit = "return ValidFormFields(this)">
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
06.03.2012, 11:31
Цитата Сообщение от __bool Посмотреть сообщение
Не понимаю, если обработчик будет в файле с формой, то он запустится при создании формы, требуется ведь при нажатии на кнопку, нужно как-то привязать php-обработчик к submit?
Всё верно, вам нужно делать в скрипте проверку, нажата ли кнопка "Submit". У вас в форме она имеет имя "btnAddArticle", значит обработчик нужно вот так подредактировать:
PHP
1
2
3
4
5
6
7
8
9
10
<?php
// Если нажата кнопка SUBMIT
if(isset($_POST['sbtnAddArticle']))
{
    if (isset($_POST['title']))
   {
        $title = $_POST['title'];
   }
}
?>
А, Макc уже и так уже вам дал то же, что и я...

Добавлено через 2 минуты
Цитата Сообщение от __bool Посмотреть сообщение
Как должна выглядеть эта строка?
Эта строка при условии, что в одном файле будет и обработчик и форма, должна выглядеть так:
HTML5
1
<form name="frmAddArticle" method="post" action = "" onsubmit = "return ValidFormFields(this)">
1
 Аватар для __bool
288 / 229 / 27
Регистрация: 13.06.2010
Сообщений: 744
06.03.2012, 15:22  [ТС]
Цитата Сообщение от Lyodik Посмотреть сообщение
нужно делать в скрипте проверку, нажата ли кнопка "Submit".
А где это делать? в JavaScript'e? Это возможно?
Ничего не понимаю, даже представить не могу.. php-сценарии выполняются на стороне сервера..т.е. чтоб их выполнить нужно полюбому отправить серверу запрос, исходя из этого вместо текущей страницы загрузится новая, которая является результатом запроса.

Объясните пожалуйста в чем я не прав?
Постараюсь понятнее описать задачу:
Открыта страница с формой.
Заполняю форму, жму кнопку "отправить"
в базу данных на MySQL сервере заносятся данные
Посредством JS очищаю форму, вывожу, сообщение об успешной операции.

Такой расклад реален, или это лишь моя фантазия?

Добавлено через 1 час 31 минуту
Или тут нужен ajax?
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
06.03.2012, 15:31
Цитата Сообщение от __bool Посмотреть сообщение
А где это делать? в JavaScript'e?
Нет, я же указал в коде php это:
PHP
1
2
3
4
5
// Если нажата кнопка SUBMIT
if(isset($_POST['sbtnAddArticle']))
{
// Тут выполняем какой-то код
}
Добавлено через 31 секунду
Вот тут и проверяется...
0
 Аватар для __bool
288 / 229 / 27
Регистрация: 13.06.2010
Сообщений: 744
06.03.2012, 17:37  [ТС]
Так а где этот php-код то разместить?
Блин код на сервере выполняется, как он будет проверять, если событие нажатия кнопки происходит на стороне клиента.

Парни, чет вы меня с ума так сведете..

Добавлено через 1 минуту
Цитата Сообщение от Lyodik Посмотреть сообщение
Нет, я же указал в коде php это:
PHP
1
2
3
4
5
// Если нажата кнопка SUBMIT
if(isset($_POST['sbtnAddArticle']))
{
// Тут выполняем какой-то код
}
Добавлено через 31 секунду
Вот тут и проверяется...
Может вы хотите цикл на сервере бесконечный запустить чтоб он каждую милисекунду проверял или как?

Добавлено через 2 минуты
Цитата Сообщение от Lyodik Посмотреть сообщение
Нет, я же указал в коде php это:
Скажите уже наконец, если знаете, как php-код привязать к кнопке, конкретно, вот форма, вот кнопка, вот сюда код вставлять, а то выглядим как флудеры.
0
Благотворец
 Аватар для arvitaly
142 / 122 / 13
Регистрация: 29.04.2009
Сообщений: 537
06.03.2012, 17:38
Лучше использовать Ajax, к примеру JQuery

JavaScript
1
2
3
4
$('form').submit(function(){
$.post('/page/', $(this).serialize());
return false;
});
1
Веб-мастер
 Аватар для Maksimchikfull
89 / 89 / 19
Регистрация: 11.08.2011
Сообщений: 674
06.03.2012, 21:55
__bool,
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PHP In PHP</title>
</head>
 
<body>
<?php
if(isset($_POST['submit'])){
    echo "<h4>Кнопка нажата!</h4><p>Какойже я глупый!</p>";
}
?>
<form action="" method="post">
<p>Нажмите на кнопку и смотрите выше. Выше должно появится сообщение сообщяющее о том что кнопка была нажата, и текст. Какойже я глупый!<input name="submit" type="submit" value="Нажать СЮДА"></p>
</form>
</body>
</html>
1
 Аватар для __bool
288 / 229 / 27
Регистрация: 13.06.2010
Сообщений: 744
06.03.2012, 22:17  [ТС]
Да не то это.
Я хотел, без перезагрузки страницы, тупо перезагрузить страницу и проверить нажата ли кнопка то давно ясно.
Я ведь составил последовательность действий, разве я указал, перезагрузить страницу и проверить была ли нажата кнопка?

Вообщем задача которую я поставил - фантастика.. поэтому, друзья, вы и не поняли о чем я)

Но все равно всем спасибо за советы!
0
Благотворец
 Аватар для arvitaly
142 / 122 / 13
Регистрация: 29.04.2009
Сообщений: 537
06.03.2012, 22:34
я же вам написал уже

JavaScript
1
2
3
4
5
6
7
8
$('form').submit(function(){
$.post('/page/', $(this).serialize(),function(){
 
alert('ДАННЫЕ ЗАНЕСЕНЫ!!!');
 
});
return false;
});
1
 Аватар для __bool
288 / 229 / 27
Регистрация: 13.06.2010
Сообщений: 744
06.03.2012, 23:48  [ТС]
Спасибо arvitaly, реализую отпишусь.. (с jquery пока не тороплюсь)
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
07.03.2012, 07:40
Цитата Сообщение от __bool Посмотреть сообщение
с jquery пока не тороплюсь
А без jQuery у вас не получится реализовать вашу идею (отправить данные в php-скрипт без перезагрузки страницы).
0
Веб-мастер
 Аватар для Maksimchikfull
89 / 89 / 19
Регистрация: 11.08.2011
Сообщений: 674
11.03.2012, 11:46

Не по теме:

Подскажите мне, как в JS зафиксировать нажатие кнопки? Вот что делает submit()? То я пытался вот так:

JavaScript
1
document.getElementById('submit').submit(Register);



Вот таким образом можно сделать и посылать данные из формы на обработку с помощью AJAX. Но я чото не могу зафиксировать эту кнопку.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.03.2012, 11:46
Помогаю со студенческими работами здесь

Как добавить переменную в запрос?
Всем привет! Нужна помощь, допустим что есть переменная STR = 'python форум' и нужно ее вставить в запрос(открыть ссылку) и чтобы в запросе...

добавить переменную в sql-запрос
Имеем переменную $post_ip; Через echo она выдает 192.168.150.1 $query=sprintf(&quot;UPDATE user SET hash='&quot;.$hash.&quot;'...

MySQL: как в запрос добавить переменную?
Парни, просто не большой как в запрос update добавить переменную? Пример 1. : В этом примере все хорошо работает он делает как я...

Добавить в запрос переменную с именем таблицы
есть запрос вида: string sql = &quot;SELECT serial, name FROM table1&quot;; но у меня таблицы будут меняться на table2, table3 и т.д. в...

Контроллер принимает значение обрабатывает его, потом та же форма отправляет post Запрос на другой URL
Контроллер принимает значение обрабатывает его, потом та же форма отправляет post Запрос на другой URL, каким образом можно это реализовать?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru