2016-08-02 2 views
0

Снова я застрял с ajax в своем коде. Я создаю систему ajax для поиска в реальном времени, но когда я отправляю данные в search.php & var_dump POST array, я получаю пустой массив сообщений.POST массив пуст после отправки данных через ajax

AJAX

function searching(string){ 
$.ajax({ 
    url : "request/search.php", 
    type : "POST", 
    data : "search="+string, 
    type : "text", 
    beforeSend : function(http){ 

    }, 
    success : function(response,status,http){ 
    alert(response); 
    }, 
    error : function(http,status,error){ 
     $('.response').html("<span class='error'>Something went wrong</span>"); 
     $(".response").slideDown(); 
    } 
    }) 
} 

HTML

<form id="searchBox"> 
    <p> 
     <input type="text" name="search" id="search" onkeyup="searching(this.value)" placeholder="Search here"> 
     <button class="find" data-icon="&#xe986;"></button> 
    </p> 
    </form> 

ответ

0

Вы перезаписать type : "POST", с type : "text",. Поэтому вам нужно удалить type : "text",, и с jQuery 1.9 вы должны использовать method вместо type.

Кроме этого вы не должны писать data : "search="+string, но использование:

data : { 
    search : string 
} 

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

+0

oop's thanks Я не заметил, что –

0
function searching(string){ 

$.ajax({ 
    url : "request/search.php", 
    type : "POST", 
    data : {'search': string}, 
    type : "text", 
    beforeSend : function(http){ 

    }, 
success : function(response,status,http){ 
    alert(response); 
    }, 
error : function(http,status,error){ 
    $('.response').html("<span class='error'>Something went wrong</span>"); 
    $(".response").slideDown(); 
    } 
    }) 
} 
Смежные вопросы