2016-11-17 2 views
1

Я искал какое-то время для ответа на мою проблему, но каждое решение, которое я пробовал, не работает.Ответ Ajax в консоли это нормально, но на php-странице не приходит

У меня есть HTML выбрать

<select id="exampleid"> 
    <option>Option1</option> 
    <option selected>Option2</option> 
    <option>Option3</option> 
    </select> 

Ajax запрос

$('#exampleid').change(function(){ 

     var aabbcc = $(this).val().trim(); 
     $.post("_ws/rca.php?action=brands", {aabbcc:aabbcc}, function(response) { 
     console.log('search is: ' + aabbcc + ', Response from PHP script: ' + response); 
     }); 
}) 

Это возвращение в консоли:

search is: Option2, Response from PHP script: array(1) { 
    ["aabbcc"]=> 
    string(27) "Option2" 
} 

PHP

if($action == 'brands'){ //action is relevant for link where send the ajax 
var_dump($_POST['aabbcc']); 
exit; 
} 

Проблема в том, что $ _POST возвращает пустой массив. Я почесал также print_r и var_dump. Очевидно, что AJAX отправляет правильный запрос, но в PHP не поступает.

Я проверил 404 ошибки или что-то подобное, но все кажется прекрасным.

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

+2

Вы говорите, что $ _POST пуст, но с вашего выхода консоли, похоже, что данные были получены отлично, так как мы можем видеть вывод из var_dump. –

+1

@zkip php возвращает массив, и он не пуст. '[" Aabbcc "] => string (27)« Option2 »' –

+0

@Zkip, пожалуйста, напишите свой PHP-код –

ответ

1

Ваша главная страница:

<select id="exampleid"> 
     <option>Option1</option> 
     <option>Option2</option> 
     <option>Option3</option> 
    </select> 

<div class="result">none</div> 

<script type="text/javascript"> 
     $('#exampleid').change(function(){ 
      var aabbcc = $(this).val().trim(); 
      $.post("rca.php?action=brands", {aabbcc:aabbcc}, function(response) { 
       console.log('Search is: ' + aabbcc + ', Response from PHP script: ' + response); 
       $(".result").html(response); 
      }); 
     }) 
</script> 

И это ваш обратный вызов rca.php

if($_GET['action']=='brands') { 
     echo 'PHP: '.$_POST['aabbcc']; 
     return; 
    } 
+1

Спасибо !!! Это работает как шарм. – Zkip

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