Контактная форма SimpleModal с несколькими адресами электронной почты на одной странице - PullRequest
0 голосов
/ 20 декабря 2010

У меня есть страница контактов с 5 разными адресами электронной почты, например, info@domain.com, jobs@domain.com, feedback@domain.com и т. д. В идеале я хотел бы, чтобы каждая ссылка открывала свою версию contact.php, настроенную специально для этого адреса. Я уверен, что должен быть способ передачи переменной (contact_info.php или contact_feedback.php) из ссылки на contact.js для загрузки соответствующего php-файла. Любая помощь будет потрясающей.

Большое спасибо за это, Эрик. Я закончил тем, что сделал следующее

<a href='#' id="info" class='contact'>info@thedomain.com</a>
<a href='#' id="jobs" class='contact'>jobs@thedomain.com</a> 

в contact.js я изменил ссылку на следующую:

// load the appropriate contact form using ajax
$.get("data/contact_"+this.id+".php" , function(data){

Затем я сохранил каждый контакт_ * php соответственно

Живая страница находится здесь http://www.nashi.com.au/contact.html

1 Ответ

0 голосов
/ 31 декабря 2010

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

Одно предложение:

1) назначить идентификатор для каждой контактной ссылки:

<a href="#" id="info" class="smcf-link">More Info</a>
<a href="#" id="jobs" class="smcf-link">Jobs</a>

2) Измените файл contact.js, чтобы передать идентификатор в файл contact.php:

$('#contact-form input.contact, #contact-form a.contact').click(function (e) {
    e.preventDefault();

    // load the contact form using ajax
    $.get("data/contact.php?id=" + this.id, function(data){
        // create a modal dialog with the data
        ...
    });
});

3) Измените файл contact.php для получения идентификатора и соответствующей обработки:

$token = isset($_POST["token"]) ? $_POST["token"] : "";
$id = isset($_GET["id"]) ? $_GET["id"] : "";

// do whatever you need to do based on the value in $id

Вы можете создавать различные php-файлы (и соответственно изменять JS), это ваше дело.

-Эрик

...