+ Ответить в теме
Показано с 1 по 4 из 4

Тема: Ребята помогайте с формой обратной связи(ну или формой заказа)

  1. #1

    Ребята помогайте с формой обратной связи(ну или формой заказа)

    Мне необходимо понять как работает вот такая вещь,как на этом сайте:http://gk-stroyb2b.tiu.ru/p776599-ne...icheskogo.html
    При нажатии на кнопку отправить запрос открывается pop-up форма в поле ТЕМА уже стоит Наименование темы.Насколько я понимаю это название туда как-то передается?Не буду говорить что мне это нужно просто так,я над этой темой думаю уже который день.Я понимаю что это как то связано с запросом POST но как и что?
    Хотелось бы чтобы нашелся человек и подробно объяснил.В РНР слабовато рублю на начальной стадии,если даже найдется человек за небольшую денежку подробно покажет процесс этого непостижимого(для меня)действия.Единственное что до меня доходит при клике на кнопку отправлятся GET запрос на базу по поводу id а что потом и как я не догоняю.
    Искренне надеюсь на вас профессионалы.
    Последний раз редактировалось Иван Семенов; 08.02.2012 в 00:56.

  2. #2
    Местный alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее Аватар для alexdrob
    Регистрация
    08.09.2009
    Адрес
    Краснодарский край
    Сообщений
    6,488
    http://static-cache.ru.uaprom.net/js...f45a1f0f179dbe
    Функция: contact_now_popup
    data["id"] = product_or_tender_id;  

    тут в JSON Объект устанавливается id продукта
    и отправляется к серверному скрипту
     $$.getJSON(
    url,
    data,
    function(data){
    $loading_element.replaceWith(data['html']);
    eval(data['js']);
    });

    который возвращает что то в ответ, например заголовок продукта, который и вставляется в форму.

    Вообщем эта технология называется AJAX.
    Проще всего использовать библиотеку JQuery, это на сайте и сделано.
    При клике на кнопку отправляете ID товара, и скриптом возвращаете его наименование.

    Но, можно обойтись и без этого.
    Не что не мешает при генерации самой страницы, в функцию, которая выполняется при клике на кнопку вписать не ID предмета, а сам текст. То есть делать кнопку типа
    <a href="javascript:popup('Текст который будет вставлен в форму', id товара)">отправить</a>

    Да вариантов реализации много. Можно например делать массив с продуктами которые есть на странице, и передавать в функцию ид продукта, а там из массива подставлять текст. Можно в дополнительный атребут тега пихать текст. Можно с помощью DOM получать заголовок нужного товара, к которому принадлежит кнопка, вообщем вариантов много, выбирайте который больше понимаете.

  3. #3
    [QUOTE=alexdrob;
    Да вариантов реализации много. Можно например делать массив с продуктами которые есть на странице, и передавать в функцию ид продукта, а там из массива подставлять текст. Можно в дополнительный атребут тега пихать текст. Можно с помощью DOM получать заголовок нужного товара, к которому принадлежит кнопка, вообщем вариантов много, выбирайте который больше понимаете.[/QUOTE]
    Да я все в принципе понимаю что вариантов реализации полно.А вот вы в принципе могли бы сделать это?Естественно не бесплатно.Может это вас заинтересует? Тогда стучитесь в аську 628-052-284 или в скайп iv.seme2012.А то делать то все равно нужно,а я не потяну.

  4. #4
    Местный alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее alexdrob обеспечил(а) себе прекрасное будущее Аватар для alexdrob
    Регистрация
    08.09.2009
    Адрес
    Краснодарский край
    Сообщений
    6,488
    <?php

    // предположим что это данные в базе
    $db_data = array(
    array(1, 'Монитор'),
    array(2, 'Принтер'),
    );

    if (isset($_GET['action']))
    {
    switch($_GET['action'])
    {
    case 'ajax_get_info':
    if (isset($_GET['id']))
    {
    ajax_get_info($_GET['id']);
    break;
    }
    default:
    die(json_encode(array('error'=>'Произошла ошибка!')));
    }
    }

    function ajax_get_info($id)
    {
    global $db_data;
    $id = (int)$id;
    // тут делаем запрос к бд, в ншем случае просто берём данные из переменной
    foreach($db_data as $data)
    {
    if ($data[0] == $id)
    {
    die(json_encode(array('result'=>$data[1])));
    break;
    }
    }
    }
    ?>
    <script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js'></script>
    <script>
    function ajax_get_info(id)
    {
    $.getJSON(
    location.href, // в моём случае скрпит - сам файл
    {'action':'ajax_get_info', 'id':id}, // отправим название действия и id товара
    function (data)
    {
    if (data.error) // если скрипт вернул ошибку, то выводим её
    {
    alert(data.error);
    }
    else if (data.result) // если скрипт вернул результат, то заполняем поле формы
    {
    $('#name').val(data.result) // заполняем форму
    $('#form').show() // и отображаем её
    }
    else // что то другое?
    {
    alert('Непредвиденная ошибка!')
    }
    }
    )
    }
    </script>

    <!-- это просто пример формы, можно использовать jquery ui dialog или ещё какой виджет для оформления формы -->
    <div id="form" style="display:none;">
    <form>
    <input type="text" id="name"/>
    </form>
    </div>
    <!-- конец формы -->

    <a href="javascript:void(0)" onclick="ajax_get_info(1 /* при выводе товаров, сразу вставляем id в вызов функции */)">заказать монитор</a>
    <a href="javascript:void(0)" onclick="ajax_get_info(2/* при выводе товаров, сразу вставляем id в вызов функции */)">заказать принтер</a>

+ Ответить в теме

Похожие темы

  1. Ответов: 41
    Последнее сообщение: 11.03.2011, 10:56
  2. Ответов: 14
    Последнее сообщение: 09.02.2011, 20:41
  3. Проблемы с формой обратно связи
    от boombastyk в разделе PHP
    Ответов: 9
    Последнее сообщение: 06.12.2010, 16:21
  4. Проблема с формой обратной связи.
    от vinnter в разделе Помогите!
    Ответов: 2
    Последнее сообщение: 03.08.2010, 10:59
  5. Помогите с формой обратной связи
    от Pittro в разделе Помогите!
    Ответов: 6
    Последнее сообщение: 22.09.2009, 23:25

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения