Получить AJAX POST с помощью PHP

Вы должны иметь возможность сделать это с помощью fn: replace.

Вам нужно будет импортировать библиотеку тегов в ваш JSP со следующим объявлением:

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

Затем вы может использовать следующее выражение для замены вхождения строки new в $ {data} точкой с запятой:

${fn:replace(data, "\n", ";")}

Документация не очень хороша в этом материале, и у меня не было возможности проверить ее.

0
задан haZh 6 March 2019 в 08:26
поделиться

6 ответов

Я рекомендую вам прочитать документацию по функции ajax, я попытался ее воспроизвести, и мне пришлось исправить это:

$.ajax({
    // If you don't set the url
    // the request will be a GET to the same page
    url: 'YOU_URL',
    method: 'POST', // I replaced type by method
    data: $(this).serialize(),
    success: function(result) {
        console.log(result);
    }
});

http://api.jquery.com/jquery. ajax /

ВЫХОД : enter image description here

0
ответ дан roag92 6 March 2019 в 08:26
поделиться

Я думаю, что у вас ошибка синтаксиса ошибки в ajax jQuery resquest, потому что ajax post ' http://example.com/?page=post&drpcategory=Vehicles ' не возвращает этот тип URL в браузере Вкладка «Сеть».

<?php var_dump(

Я думаю, что у вас ошибка синтаксиса ошибки в ajax jQuery resquest, потому что ajax post ' http://example.com/?page=post&drpcategory=Vehicles ' не возвращает этот тип URL в браузере Вкладка «Сеть».

[110]

Здесь пример запроса ajax

$("#drpcategory").change(function(){

e.preventDefault();

var drpcategory = $ (this) .val ();

[ 1111] $.ajax({

тип: 'post',

данные: drpcategory,

success: function (result) {

    console.log(result);

}

});

});

`

POST); exit; ?> please do this statment in your php function if anything posted to php page it will dump.

Здесь пример запроса ajax

$("#drpcategory").change(function(){

e.preventDefault();

var drpcategory = $ (this) .val ();

[ 1111] $.ajax({

тип: 'post',

данные: drpcategory,

success: function (result) {

    console.log(result);

}

});

});

`

0
ответ дан Anandhukrishna VR 6 March 2019 в 08:26
поделиться

Пожалуйста, попробуйте этот код:

$.post('URL', $("#FORM_ID").serialize(), function (data)
{
  alert('df);
}
0
ответ дан NimeSh Patel 6 March 2019 в 08:26
поделиться

Прежде всего, эта строка -> type: $ (this) .attr ('post') должна иметь тип : $ (this) .attr ('method'), [ 116]. Так что это даст значение ** type: post ** и

Насколько я понимаю, вы просите отправлять ajax всякий раз, когда выбираете опции из drpcategory . Почему вы отправляете всю форму для этого. Если я там, где вы, я должен был решить эту проблему следующим образом

$("#drpcategory").change(function(){
e.preventDefault();
var drpcategory=$(this).val();
$.ajax({
   type: 'post',
   data: drpcategory,
   success: function(result) {
        console.log(result);
   }
});
});

На вашей стороне php вы можете получить свои данные, например,

echo 

Прежде всего, эта строка -> type: $ (this) .attr ('post') должна иметь тип : $ (this) .attr ('method'), [ 116]. Так что это даст значение ** type: post ** и

Насколько я понимаю, вы просите отправлять ajax всякий раз, когда выбираете опции из drpcategory . Почему вы отправляете всю форму для этого. Если я там, где вы, я должен был решить эту проблему следующим образом

[110]

На вашей стороне php вы можете получить свои данные, например,

[111]POST['drpcategory'];
0
ответ дан Ijhar Ansari 6 March 2019 в 08:26
поделиться
First change to $value

<div class="form-group">
 <label>Category</label>
 <select class="form-control bg-dark btn-dark text-white" id="drpcategory" name="drpcategory" required>
 <?php
      $category = ''.$dir.'/template/post/category.txt';
      $category2 = file($category, FILE_IGNORE_NEW_LINES);

      foreach($category2 as $value)
      {
          echo "<option value='".$value."'>".$value."</option>";
      }
 ?>
 </select>

затем добавьте URL

<script>
 $(function()
 {
   $('#form').submit(function(e)
   { 
      e.preventDefault();
      $.ajax({
          url:'folder/filename.php',
          type: 'post',
          data: '{ID:" . $Row[0] . "}',
          success: function(result) {
              console.log(result);
          }
      });
   });
   $('#drpcategory').on('change',function()
   {
      $("#form").submit();
   });
 });

запрос на попытку

if(isset([110] 

затем добавьте URL

[111]

запрос на попытку

[112]

Результат будет / должен быть отправлен обратно та же страница

REQUEST['ID']))

Результат будет / должен быть отправлен обратно та же страница

0
ответ дан user11138902 6 March 2019 в 08:26
поделиться

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

Во-первых, путаница с URL:

Вы все маршрутизируете через index.php. Следовательно, index.php должен следовать структуре, похожей на эту: com / jquery.post / вы должны указать URL.

Все свойства, кроме URL, являются необязательными

Ваш JQuery AJAX отправит запрос на публикацию на вашу страницу index.php. Когда ваша страница выполняется, как показано выше, она просто напечатает {message: "Your submission was received"} и затем умрет. JQuery будет ожидать этого ответа и затем делать все, что вы скажете, чтобы сделать с ним (в этом примере вывести его на консоль).


Обновление после обсуждения

<div class="form-group">
     <label>Category</label>
     <select class="form-control bg-dark btn-dark text-white" id="drpcategory" name="drpcategory" required>
     <?php
          $category = ''.$dir.'/template/post/category.txt';
          $category = file($category, FILE_IGNORE_NEW_LINES);

          foreach($category as $category)
          {
              echo "<option value='".$category."'>$category</option>";
          }
     ?>
     </select>
</div>

<!-- HTML to receive AJAX values -->
<div>
  <label>Item</label>
  <select class="" id="drpitem" name="drpitem"></select>
</div>





<script>
  $(function(){

    $('#drpcategory').on('change',function() {
      $.ajax({
        url: '/receive.php',
        method: 'post',
        data: $(this).serialize(),
        success: function(result) {
          workWithResponse(result);
        }
      });

    });    

  });


  function workWithResponse(result) {

    // jquery automatically converts the json into an object.
    // iterate through results and append to the target element

    $("#drpitem option").remove();
    $.each(result, function(key, value) {   
         $('#drpitem')
             .append($("<option></option>")
                        .attr("value",key)
                        .text(value)); 
    });        
          }

</script>

receive.php:

<?php 
// there can be no output before this tag.

if(isset(

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

Во-первых, путаница с URL:

Вы все маршрутизируете через index.php. Следовательно, index.php должен следовать структуре, похожей на эту: com / jquery.post / вы должны указать URL.

Все свойства, кроме URL, являются необязательными

Ваш JQuery AJAX отправит запрос на публикацию на вашу страницу index.php. Когда ваша страница выполняется, как показано выше, она просто напечатает {message: "Your submission was received"} и затем умрет. JQuery будет ожидать этого ответа и затем делать все, что вы скажете, чтобы сделать с ним (в этом примере вывести его на консоль).


Обновление после обсуждения

[111]

receive.php:

[112]

Как только у вас все заработает, вы можете взять код из receive.php и вставить его в вершина index.php, и перенаправьте вызов ajax на index.php. Убедитесь, что до этого фрагмента кода невозможен вывод.

POST['drpcategory'])) { // get your items from drpcategory. I will assume: $items = array('val1' => 'option1','val2' => 'option2','val3' => 'option3'); // send this as json. you could send it as html, but this is more flexible. header('Content-Type: application/json'); // convert array to json $out = json_encode($items); // simply print the output and die. die($out); }

Как только у вас все заработает, вы можете взять код из receive.php и вставить его в вершина index.php, и перенаправьте вызов ajax на index.php. Убедитесь, что до этого фрагмента кода невозможен вывод.

0
ответ дан Tim Morton 6 March 2019 в 08:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: