2013-08-15 3 views
0

Мне нужно создать файл обработки ajax, где этот javascript должен отправить переменную myGroupId, а затем отправить ее обратно в файл edit.php, где я могу запустить запрос из возвращаемого файла.Обработка переменной AJAX

Я не знаком с ajax, поэтому мне нужно знать, как должен выглядеть файл обработки относительно переменной javascript, которая преобразуется в переменную php. Я знаю, что мне нужно создать другую папку для отправки переменной javascript.

Мне просто нужно знать, как сделать файл обработки ajax (или все, что вы хотите назвать).

Вот мой JavaScript:

<script type="application/javascript"> 
    $(document).on("click", ".open-EditRow", function() { 
    var myGroupId = $(this).data('id'); 
    $(".modal-body #groupId").val(myGroupId); 

    // ajax call 
    var url = "?groupId=" + encodeURIComponent(myGroupId); 
    $.get(url, function(data){ 
    // do something here 
    }); 
     }); 
    </script> 

Я позову отдельный файл ajaxProcessing.php. Теперь, если кто-то может показать мне, как этот файл должен выглядеть, чтобы преобразовать myGroupId в переменную php, я был бы благодарен.

Когда он будет отправлен обратно в мой файл edit.php, я должен буду ссылаться на него как $ _GET ['groupId'].

Заранее спасибо.

ответ

0

адаптировано из документации JQuery (http://api.jquery.com/jQuery.get/):

$.get(url, {GroupID: myGroupId}) 
.done(function(data) { 
    alert("Data Loaded: " + data); 
}); 

Однако, если вы передаете данные, которые будут обрабатываться этим скриптом, вы действительно должны использовать POST:

$.post(url, {GroupID: myGroupId}) 
    .done(function(data) { 
     alert("Data Loaded: " + data); 
    }); 

В в любом случае вы можете получить полученную переменную в файле обработки ajax, используя $variable = $_GET['GroupID']; (or $_POST['GroupID'])

ПРИМЕЧАНИЕ. предотвратить SQL-инъекцию, вы должны дезинфицировать переменную $ либо через строку mysqli_real_escape, либо использовать подготовленные операторы mysqli.. Более конкретно, не создавайте запрос типа «Выберите * FROM table_name WHERE GroupID = $ variable» (я знаю, что мой синтаксис здесь неверен , Но ты получил идею).

Кроме того, убедитесь, что вы используете mysqli или PDO - mysql устарел.

+0

Поэтому я добавил этот код к своему javascript. Но что теперь? Когда я нажимаю кнопку, он выплескивает окно предупреждения, а в предупреждении отображается весь html из edit.php. Что я делаю не так? – HoodCoderMan

+0

У меня был аналогичный вопрос с этим (http://stackoverflow.com/questions/17973386/ajax-request-callback-using-jquery). В принципе, все ваши выходные сценарии обработки ajax (html, php echo statements и т. Д.) Передаются обратно в вашу функцию .get() (или .post()). Общим решением является наличие одного сценария, предназначенного для приема вызова AJAX и возврата данных, без вывода HTML - то есть, что эхо скрипта ТОЛЬКО данные, которые вы хотите получить в функции AJAX. Не зная больше о контексте вашей общей структуры, трудно сказать, является ли это подходящим вариантом для вас. – JRizz

Смежные вопросы