вывод php на серый ящик - PullRequest
       41

вывод php на серый ящик

0 голосов
/ 23 февраля 2011

У меня есть форма, которая вызывает скрипт php при отправке для вставки данных в базу данных MySQL. Я хотел бы, чтобы выходные данные php-скрипта вернулись в greybox. Я не смог заставить его работать, поэтому я ценю любую помощь, которую вы, ребята, можете оказать.

У меня есть вызов greybox в определении формы, см. Ниже, но я не справляюсь с задачей.

Вот подмножество кода:

<script type="text/javascript" src="greybox/AJS.js"></script>
<script type="text/javascript" src="greybox/AJX_fx.js"></script>
<script type="text/javascript" src="greybox/gb_scripts.js"></script>

<div id="content">

<form id="contact_us" name="contact_us" action="contact-greybox.php"  method="POST" onSubmit="return GB_showCenter('Testing', this.action, 500, 500)">
<fieldset>
<label for="employee_id">Employee ID:</label>
<input id="employee_id" name="employee_id" type="number" size="10" /><P />
<label for="employee_name">Employee Name:<strong><br /> (as it should appear on
email) </strong></label>
<input id="employee_name" name="employee_name" type="text"  /><P />
</fieldlist>

<p class="submit"><input type="image" name="submit" value="Submit Form" src="icons/ambas_submit.jpg" boder="0">

</form>
</div>

PHP - это простой оператор вставки в MySQL.

Ценю любую помощь

1 Ответ

0 голосов
/ 25 февраля 2011

greybox не поддерживает отправку POST, но общий шаблон - использование ajax для отправки формы, иначе ваша страница обновится.

Вам необходимо установить onclick ($ .submit) для ввода формы, а затем вернуть false в конце вашего вызова ajax:

$('#contact_us').submit(function(){
    //get your inputs here
    var e_id = $.('#employee_id').val();
    //...etc....
    $.post( ...
        //set your data/input fields here:
        data: { id: e_id },
        success: function(response){
            //display the response: this is what you get back from: contact-greybox.php   
        }
    })
    return false;
});

fancybox - это оверлейное окно, которое поддерживает вызов с чистым HTML в качестве параметра, так что вы можете просто вставить это в свою функцию успеха:

$.fancybox(response);
...or
$.fancybox(response.html)... etc.
...