С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310

Две и более submit кнопки для разных действий в одном файле

12.05.2023, 12:08. Показов 574. Ответов 8

Студворк — интернет-сервис помощи студентам
В таблице есть две кнопки Продано и Удалить
Сейчас по кнопке Продано удаляется строка а по кнопке Удалить вообще ни чего не происходит. Что не так сделал? Нужно передать id строки для удаления по кнопке Удалить и по кнопке Продано сделать другую операцию с этой строкой.
HTML5
1
2
3
4
5
6
    <form class="myModal" action='delete.php' method='post'>
                        <input type='hidden' name='prodano' value=<?=$value['id']?>>
                        <input type='submit' name='prodano' value='Продать' style="background:#32a842; color:white; border-radius:5px; border: 1px solid #32a842">
                        <input type='hidden' name='delete' value=<?=$value['id']?>>
                        <input type='submit' name='delete' value='Х' style="background:red; color:white; border-radius:5px; border: 1px solid red">
                </form>
файл delete.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
require_once __DIR__.'/boot.php';
if(isset($_POST['delete']))
{
 
    $sql = "DELETE FROM details WHERE id=:id";
    $stmt = pdo()->prepare($sql);
    $stmt->bindValue(':id', $_POST['delete']);
    $stmt->execute();
    header("Location: Stock.php");
}
else if (isset($_POST['prodano'])) {
  echo ("Работает");
}
?>
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.05.2023, 12:08
Ответы с готовыми решениями:

CF 7. Два разных кнопки submit в одной форме
С помощью фильтра add_filter( 'wpcf7_before_send_mail', 'wpcf7_before_send_mail_start_function' ); я могу после отправки письма совершать...

Две кнопки submit на форме выполняют различные действия
Есть две кнопки submit на форме. И в зависимости от нажатой кнопки должна загружаться та или иная страничка, но срабатывает всегда только...

Две разных мышки на одном компе
Преподаю фотошоп своему приятелю Подключили к компьютеру вторую мышь. У мышей разные характеристики. У одной мышки скорость перемещения...

8
 Аватар для Дух системы
75 / 58 / 20
Регистрация: 01.10.2009
Сообщений: 208
12.05.2023, 14:20
Лучший ответ Сообщение было отмечено gena8208 как решение

Решение

одна форма один сабмит, в противном случае в delete.php приходят сразу два поста (delete и prodano) + ко всему на submit не нужно вешать name, у тебя по две шт одного и того же name
HTML5
1
2
3
4
5
6
7
8
9
<form class="myModal" action='delete.php' method='post'>
<input type='hidden' name='prodano' value=<?=$value['id']?>>
<input type='submit' value='Продать' style="background:#32a842; color:white; border-radius:5px; border: 1px solid #32a842">
</form>
 
<form class="myModal" action='delete.php' method='post'>
<input type='hidden' name='delete' value=<?=$value['id']?>>
<input type='submit' value='Х' style="background:red; color:white; border-radius:5px; border: 1px solid red">
</form>
1
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
12.05.2023, 15:10  [ТС]
Цитата Сообщение от Дух системы Посмотреть сообщение
одна форма один сабмит
Все работает, но теперь кнопки встают друг по другом. Я display: inline-block; ставил и в стиле самой кнопки и в submit для формы
CSS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 #myModal button,
        #myModal input[type=submit] {
            display: inline-block;
            position: relative;
            left: 50%;
            transform: translate(-50%, 0);
            width: 150px;
           /* margin-left:20%;*/
            margin-top: 10px;
            color: #5389fc;
            font-size: 16px;
            letter-spacing: 1px;
            cursor: pointer;
            background: transparent;
            border: 1px solid #5389fc;
            border-radius: 5px;
            box-shadow: inset 0 0 0 0 #5389fc;
            transition: .3s;
            -webkit-transition: .3s;
        }
 
            #myModal button:hover,
            #myModal input[type=submit]:hover {
                color: #ffffff;
                box-shadow: inset 150px 0 0 0 #5389fc;
            }
0
 Аватар для Дух системы
75 / 58 / 20
Регистрация: 01.10.2009
Сообщений: 208
12.05.2023, 15:16
оберните в таблицу например
HTML5
1
2
3
4
5
6
7
8
9
10
11
<table><tr><td>
<form class="myModal" action='delete.php' method='post'>
<input type='hidden' name='prodano' value=<?=$value['id']?>>
<input type='submit' value='Продать' style="background:#32a842; color:white; border-radius:5px; border: 1px solid #32a842">
</form>
</td><td><div style="display:block;width:800px;">РАССТОЯНИЕ МЕЖДУ КНОПКАМИ</div></td>
<form class="myModal" action='delete.php' method='post'>
<input type='hidden' name='delete' value=<?=$value['id']?>>
<input type='submit' value='Х' style="background:red; color:white; border-radius:5px; border: 1px solid red">
</form>
</td></tr></table>
в css можно манипулировать каждым пикселем
0
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
12.05.2023, 15:53  [ТС]
Цитата Сообщение от Дух системы Посмотреть сообщение
в css можно манипулировать каждым пикселем
хреново чет у меня получается. Вроде по вашему одна строка 2 столбца в них кнопки но они разлетаются. не понятно куда. Пока так осталось. ХЗ че делать
Миниатюры
Две и более submit кнопки для разных действий в одном файле  
0
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
12.05.2023, 16:17  [ТС]
Цитата Сообщение от Дух системы Посмотреть сообщение
одна форма один сабмит
PHP/HTML
1
2
3
4
5
<form method="post">
  ...
  <input type="submit" name="save" value="Сохранить" />
  <input type="submit" name="delete" value="Удалить" />
</form>
PHP
1
2
3
4
5
6
if (isset($_POST['save'])) {
  ...
}
else if (isset($_POST['delete'])) {
  ...
}
http://xandeadx.ru/blog/php/547
0
 Аватар для Дух системы
75 / 58 / 20
Регистрация: 01.10.2009
Сообщений: 208
12.05.2023, 16:52
Лучший ответ Сообщение было отмечено gena8208 как решение

Решение

Цитата Сообщение от gena8208 Посмотреть сообщение
http://xandeadx.ru/blog/php/547
ок

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<html><head><style>
 #myModal button,
        #myModal input[type=submit] {
            display: inline-block;
            position: relative;
            left: 50%;
            transform: translate(-50%, 0);
            width: 150px;
           /* margin-left:20%;*/
            margin-top: 10px;
            color: #5389fc;
            font-size: 16px;
            letter-spacing: 1px;
            cursor: pointer;
            background: transparent;
            border: 1px solid #5389fc;
            border-radius: 5px;
            box-shadow: inset 0 0 0 0 #5389fc;
            transition: .3s;
            -webkit-transition: .3s;
        }
 
            #myModal button:hover,
            #myModal input[type=submit]:hover {
                color: #ffffff;
                box-shadow: inset 150px 0 0 0 #5389fc;
            }
</style></head><body>
<table><tr><td>
<form class="myModal" action='delete.php' method='post'>
<input type='hidden' name='prodano' value="0">
<input type='submit' value='Продать' style="background:#32a842; color:white; border-radius:5px; border: 1px solid #32a842">
</form>
 </td><td>
<form class="myModal" action='delete.php' method='post'>
<input type='hidden' name='delete' value="0">
<input type='submit' value='Х' style="background:red; color:white; border-radius:5px; border: 1px solid red">
</form>
</td></tr></table>
<?php
foreach($_POST AS $k => $v)
{
    echo $k.' => '.$v.'<br>';
}
?>
</body></html>
Миниатюры
Две и более submit кнопки для разных действий в одном файле  
1
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
12.05.2023, 17:06  [ТС]
Цитата Сообщение от Дух системы Посмотреть сообщение
ок
Это был хитрый ход. Для меня новичка это шикарно. Я даже не знал что это было но прочитал
Это означает, что для каждой пары ключ-значение в обходной переменной $exключ присваивается, $kа значение — $v. Другими словами:

PHP
1
2
3
4
$ex = array("1" => "one","2" => "two", "3" => "three");
foreach($ex as $k=>$v) {
   echo "$k : $v \n";
}
выходы:

Code
1
2
3
1 : one
2 : two
3 : three
Не совсем все досконально. Но суть уловил про подмену
0
4 / 4 / 1
Регистрация: 20.12.2019
Сообщений: 310
14.05.2023, 13:52  [ТС]
Цитата Сообщение от Дух системы Посмотреть сообщение
ок
Добрый день! Вчера сделал как смог поиск по базе и вывод таблицы по кнопке. Сильно не ругайте за пробный вариант.
Не подскажите почему выводит в таблице искомый результат когда нажал кнопку Поиск?

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<form  class="searchinput" method="post" >
            <p><input  type="text" name="search" id="search"> <input type="submit" value="Поиск"></p>
    </form>
</div>  
<?php
                $sql = pdo()->prepare("SELECT * FROM `details`");
                $sql->execute();
                $result = $sql->fetchAll();
                if( isset( $_POST['search'] ) )
                {
                $sql = pdo()->prepare("SELECT * FROM `details` WHERE `articul` = :search");
                $sql->execute(['search' => $_POST['search']]);
                $result = $sql->fetchAll();
                if($sql->rowCount()==0){
                $sql = pdo()->prepare("SELECT * FROM `details`");
                $sql->execute();
                $result = $sql->fetchAll();    
                flash('Деталь не найдена!');
                }
    
    }
   ?>
<table class="tablekassa">
        <tr>
          <th></th>
          <th>Артикул</th>
          <th>Производитель</th>
          <th>Название</th>
          <th>Кол-во</th>
          <th>Цена</th>
          <th>Партия</th>
          <th>Магазин</th>
          <th style="background:red">Стеллаж №</th>
          <th style="background:red">Полка №</th>
          <th style="background:red">Коробка №</th>
          <th>Состояние</th>
          <th>Комментарий</th>
          <th></th>
           
        </tr>
            <?php foreach ($result as $value) { ?>
        <tr>
            <td><?=$value['id'] ?></td>
            <td><?=$value['articul'] ?></td>
            <td><?=$value['manufacturer'] ?></td>
            <td><?=$value['detail'] ?></td>
            <td><?=$value['quantity'] ?></td>
            <td><?=$value['price'] ?></td>
            <td><?=$value['partiya'] ?></td>
            <td><?=$value['stellazh'] ?></td>
            <td><?=$value['magazine'] ?></td>
            <td><?=$value['polka'] ?></td>
            <td><?=$value['korobka'] ?></td>
            <td><?=$value['sostoyanie'] ?>
            <td><?=$value['comment'] ?></td>
            <td><table class="t1"><tr><td>
 <form  action='delete.php' method='post'>
<input type='hidden' name='prodano' value=<?=$value['id']?>>
<input type='submit' value='Продать' style="background:#32a842; color:white; border-radius:5px; border: 1px solid #32a842">
</form>
 </td><td>
<form  action='delete.php' method='post'>
<input type='hidden' name='delete' value=<?=$value['id']?>>
<input type='submit' value='Х' style="background:red; color:white; border-radius:5px; border: 1px solid red">
</form>
 
</table>
<?php
foreach($_POST AS $k => $v)
{
    echo $k.' => '.$v.'<br>';
}
?>
</td></tr> <?php } ?>
    </table>        
            
</div>
   <? flash()?>
Миниатюры
Две и более submit кнопки для разных действий в одном файле  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.05.2023, 13:52
Помогаю со студенческими работами здесь

Две таблицы из разных БД в одном запросе
Вообщем как это можно организовать??? Не хотелось просто что бы одинаковые поля были в двух таблицах.

Две кнопки в одном потоке?
Вобщем есть две кнопки, на одной кнопке выделенный поток, на второй нет, но процедура для второй кнопки подвисает форму на 5-10 секунд,...

2 и более медиа запросов в одном файле CSS
Здравствуйте. Вопрос такой, я использую (в данный момент) в файле CSS 2 медиа запроса, но в дальнейшем хочу ещё пару добавить. Но если...

Две Windows 10 на одном ПК на разных SSD, >> исчезают файлы с дисков D, E
Здравствуйте! В указанной конфигурации ПК ниже, у меня имеются две Виндовс (вторая клон первой), каждая на своём физ. SSD (в M.2 и в...

Две одинаковые буквы в одном файле
Здравствуйте. Довольно глупый вопрос.Вот в одном файле нужно решить несколько заданий,и когда я пишу в одном задании i:=1..10,то уже в...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru