Кодирование формы, которая генерирует всплывающее изображение при отправке

#php #javascript #jquery #joomla

#php #javascript #jquery #joomla

Вопрос:

Я ищу несколько общих советов по разработке кода формы, которая должна генерировать изображение при отправке. Я новичок в этом, и передача данных из формы в генератор изображений ставит меня в тупик. Приветствуются любые советы (у меня большой опыт работы с C, немного JavaScript, нет php).

Проблема: пользователь должен заполнить форму (в Joomla). Пользователь устанавливает ряд параметров и нажимает отправить. Когда я вижу отправку, я должен вызвать программу на C, передав ей параметры формы. Затем программа C выводит JavaScript (который кодирует изображение SVG). Затем это изображение должно появиться (предпочтительно в модальном) в браузере клиента.

Я не смог найти существующее расширение Joomla, которое делает что-то подобное или которое я могу изменить для этого.

Я могу написать php для вызова кода C, но как мне передать данные формы в php и организовать отображение внутри всплывающего окна? У меня есть общее представление о том, как я могу использовать jQuery для ответа на отправку формы и для создания всплывающего окна с использованием данных из формы (примерно http://www.sohtanaka.com/web-design/inline-modal-window-w-css-and-jquery /). Однако я не вижу, что это имеет значение. Основная проблема заключается в том, что я должен сгенерировать SVG JavaScript на сервере, и я не могу повлиять на это из клиентского кода jQuery (я думаю). Я думаю, что клиентский код не может сделать гораздо больше, чем оформить всплывающее окно.

Любые указатели приветствуются.

Комментарии:

1. Запросите SVG после отправки через PHP или сделайте это с помощью jQuery AJAX и вставьте его в модальный, запустите модальный. У вас уже есть код для отправки формы, генерирующий SVG?

2. Пусть jQuery отправляет данные с помощью AJAX: $.ajax({ type: 'POST', url: url, data: data, success: success, dataType: dataType });

3. Итак, общая идея заключается в том, что я отвечаю на отправку формы на клиенте с помощью JavaScript, а затем использую AJAX для отправки запроса обратно на сервер? И сервер отвечает данными изображения? Означает ли это, что я должен поместить все данные параметров формы в URL, а затем проанализировать URL на сервере на php? @Marco: На данный момент у меня есть только SVG-код — пытаюсь решить, куда идти дальше!

4. Только что нашел примеры кодирования AJAX в w3schools ( w3schools.com/ajax/ajax_examples.asp ). Похоже, я могу использовать эти примеры практически напрямую, чтобы делать то, что я хочу.

Ответ №1:

Не могли бы вы сделать что-то подобное…

HTML

 <form id="svgGetter">
//form content
</form>

<div id="svgSetter"></div>
  

jQuery

   $('form#svgGetter').submit(function() {  
    alert("Posting data...");  

    $.post("yoursvgcreater.php", $(this).serialize(), function(data) {  
      if (data)  
      {  
        alert("It worked.");  
        $('svgSetter').wrapInner('<svg />').append(data);
      }   
    });  
    return false;  
  });