[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Передача POST
Dimiroff
Есть форма.
user posted image
Товары вытаскиваются из базы циклом do/while. Обработчик должен принять название товара и его количество. Фактически так:

Телевизор - 3шт.
Монитор - 1шт.


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

Пожалуйста, посоветуйте как осуществить все это?
Желателен код



Спустя 5 часов, 52 минуты, 14 секунд (24.12.2011 - 14:20) inpost написал(а):
Я тебя не понимаю. При нажатии отправляется $_POST суперглобальный массив, его и помещаешь в функцию mail(). В чём, собственно, проблема?

Спустя 1 час, 52 минуты, 24 секунды (24.12.2011 - 16:12) Dimiroff написал(а):
Как отправить 2 значения: название и количество и чтоб ничего не перепуталось?
Собственно этого я и не знаю. И как потом это все разобрать в обработчике. Объясните Ваш вариант плиз...

Спустя 1 час, 45 минут, 39 секунд (24.12.2011 - 17:58) inpost написал(а):
Dimiroff
Разные имена им дай.
name="cost[1]" , name="count[1]"
В таком духе. И связка сохранится, как раз.

Спустя 6 часов, 37 минут, 45 секунд (25.12.2011 - 00:36) Guest написал(а):
А каким образом? В базе неизвестное количество товара. Товар добавляется и убирается с базы.

Спустя 22 минуты, 58 секунд (25.12.2011 - 00:58) inpost написал(а):
а при чём тут база? У тебя вопрос стоял совсем другой. Получить из формы данные, какой товар выбран и сколько товара.
Собственно новый вопрос непонятен.

Спустя 16 часов, 57 минут, 17 секунд (25.12.2011 - 17:56) Dimiroff написал(а):
Давай чтобы нам обоим было понятно, приведи свой вариант кода формы и обработчика.

Спустя 5 минут, 47 секунд (25.12.2011 - 18:02) print_f написал(а):
Dimiroff
не проще, пусть даже не рабочий, но свой код выложить? так понятнее будет, чем такое ТЗ..

Спустя 5 часов, 59 минут, 12 секунд (26.12.2011 - 00:01) Dimiroff написал(а):
Я попробую, но бросать особо то нечего так как в том и проблема ч не знаю как осуществить...

buy.php

<form action="buy_true.php" method="post">
<
p><strong>Укажите приборы для покупки:</strong></p>
<?
$select_catalog = mysql_query ("SELECT * FROM catalog ORDER BY id DESC",$db);
$ins_catalog = mysql_fetch_array ($select_catalog);
do {
printf ("
<input name='checkbox[][isset]' type='checkbox' value='%s' />%s (%s рублей) <input size='1' maxlength='2' value='' type='text' name='checkbox[][count]'> шт.<br>"
, $ins_catalog ['title'], $ins_catalog ['title'], $ins_catalog ['sale']);}
while ($ins_catalog = mysql_fetch_array ($select_catalog));
?>
<input name="submit" type="submit" value="Оформить заказ" />
</
form>


А тут хз... было вот так:
buy_true.php

$product = ''; if(!empty($_POST['checkbox'])){$product = implode(', ',$_POST['checkbox']);}

Спустя 36 минут, 25 секунд (26.12.2011 - 00:37) inpost написал(а):
Dimiroff
Почему я должен бесплатно работать и давать готовый код?! smile.gif

Спустя 30 минут, 29 секунд (26.12.2011 - 01:08) Dimiroff написал(а):
Я не на фриланс зашел, а к опытным разработчикам за помощью. Вы мне будете помогать или нет? Как мне еще просить?!

Спустя 20 минут, 38 секунд (26.12.2011 - 01:28) inpost написал(а):
Dimiroff
То есть зайдя на фриланс ты платишь, а на наш форум - ищешь бесплатную помощь.
Мы тут что, бесплатная рабочая сила, нам делать нечего?



Спустя 33 секунды inpost написал(а):
Вылечись от Попова под №1:
irbis-team.com && irbis-school.com

Спустя 18 минут, 36 секунд (26.12.2011 - 01:47) Dimiroff написал(а):
Спасибо, до свиданья!

Спустя 2 минуты, 21 секунда (26.12.2011 - 01:49) inpost написал(а):
Dimiroff
Вот видишь, у тебя в планах не стать крутым программистом, а просто, чтобы за тебя выполнили задание и всё.
А программистами так не становятся, это огромный труд в самообразовании. Я дал отличные источники, которые помогут изучить принципы работы с Базой Данный, с логикой приложений.

Спустя 11 минут, 5 секунд (26.12.2011 - 02:00) inpost написал(а):
После курсов Попова я уже мог заносить данные в БД без всяких проблем. А ты не можешь ни нормально объяснить, что тебе надо, ни сделать хотя бы часть из своего задания.
И к тому же, вместо того, чтобы сделать так, как я показал, ты делаешь какой-то ужасно кривой многомерный массив: checkbox[][isset]

Спустя 1 час, 13 минут, 5 секунд (26.12.2011 - 03:13) Dimiroff написал(а):
А тебе не приходила в голову мысль что я не такой крутой программист как ты? И потому и зашел на Ваш форум за помощью. Да я изучал уроки Попова, но в них не шла речь о передачи нескольких чекбоксов с текстовыми полями. Мне показалось это сложным.
Вместо того чтобы помочь мне, Вы просто решили показать что я хуже вас. И что, легче? Вы знаете именно за этим я и пришел.
Вам же так трудно было все объяснить начинающему... Ну тогда желаю Вам удачи и преуспевания в Ваших делах. Пусть у Вас все получается, а не так как у меня. И пусть Вас окружают только те люди, которые захотят Вам помочь, а не такие как Вы сами! Всех благ!

Спустя 4 часа, 15 минут, 14 секунд (26.12.2011 - 07:29) inpost написал(а):
Dimiroff
Я помогаю очень многим начинающим программистам, даже больше, чем должен. Если я говорю, что сейчас тебе надо излечиться от Поповщины до того, как идти в твоём обучении дальше, то значит так и есть.
Но ведь ты сам выбрал Попова, а не учебник Котерова, потому что тебе хотелось ВСЁ И СРАЗУ, а в итоге потратил время в пустую, не бывает такого: посмотрел и научился.
Если ссылку смотрел, но не нашел, то тут всё изложено:
http://irbis-team.com/15/10
Ещё важный момент, с чего стоит начать:
http://irbis-team.com/15/1 - так и называется, основы основ, для самых маленьких.

Спустя 2 часа, 57 минут, 15 секунд (26.12.2011 - 10:26) Revan написал(а):
Цитата
Dimiroff
Я помогаю очень многим начинающим программистам, даже больше, чем должен. Если я говорю, что сейчас тебе надо излечиться от Поповщины до того, как идти в твоём обучении дальше, то значит так и есть.
Но ведь ты сам выбрал Попова, а не учебник Котерова, потому что тебе хотелось ВСЁ И СРАЗУ, а в итоге потратил время в пустую, не бывает такого: посмотрел и научился.
Если ссылку смотрел, но не нашел, то тут всё изложено:
http://irbis-team.com/15/10
Ещё важный момент, с чего стоит начать:
http://irbis-team.com/15/1 - так и называется, основы основ, для самых маленьких.


Ты помогаешь многим начинающим программистам лишь потому, что ТЕБЕ хочется это делать, так ты чувствуешь что чего-то стоишь, и кому-то нужен в этой жизни, не нужно лукавить, ты делаешь это для себя, а не для начинающих. Не стоит обливать человека дерьмом, только потому, что он выбрал плохие уроки, и начал изучение программирования с них, тем самым демонстрируя своё превосходство. Это то же самое, что ученик гарварда будет поливать дерьмом выпускника киевского ПТУ, когда тот спросит у него помощи.

Спустя 46 минут, 21 секунда (26.12.2011 - 11:12) Revan написал(а):
Вот, только что набросал, если я нигде не натупил с БД, то должен работать (БД мне было создавать лень, поэтому я по быстрому протестировал с массивами, так что если не заработает - пиши). Пробуй. А вот от Попова следует отучиться, и переучиться...


<?php
// Этот код проверяет отправлена ли форма, если кнопку отправить нажали, делаем следующее
if (isset($_POST['name'])) {
// В переменной $mail, будет хранится текст самого сообщения
$mail = '';
// Проходимся по массиву, который получили из поста, и сверяем
// существует ли чекбокс (был ли нажат) или нет, если существет - обновляем
//переменную $mail в которой будет текст имейла

foreach($_POST['name'] as $key=>$value) {
if (!isset($_POST['itms'][$key])) continue;
$mail .= "Название товара: $value; К-во: {$_POST['count'][$key]}<br />";
}
mail(); // Функцию mail настроишь уже сам
}

// Выбираем товары из базы
$items = mysql_query("SELECT * FROM `catalog` ORDER BY `id` DESC");

echo "<form name=\"form\" method=\"POST\" action=\"\">";
// Проходимся по товарам из базы
while ($data = mysql_fetch_assoc($items)) {
// Выводим товары из базы в чекбоксы и формы, в массивы вбиваем id для проверки в будущем
echo "<input type=\"checkbox\" name=\"itms[{$data['id']}]\" value=\"0\" />
{$data['name']}
<input type=\"text\" name=\"count[{$data['id']}]\" />
<input type=
\"hidden\" name=\"name[{$data['id']}]\" value=\"{$data['name']}\" /><br />";
}
echo "<input type=\"submit\" /></form>";
?>


Только не тупо копируй все это, а пытайся разобраться, как работает, и почему оно так работает.

Спустя 6 часов, 16 минут, 16 секунд (26.12.2011 - 17:28) inpost написал(а):
Revan
Если ты такой, как описал, то есть дрянь - не надо всех ставить под одну гребёнку.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.