2015-05-22 2 views
1

Я хочу получить результат ajax в переменной php. Пожалуйста, помогите мне.Как получить результат ajax в переменной php?

<select name="type" onchange="showCustomer(this.value)"> 
     <option value="">---SELECT ITEM TYPE---</option> 
     <option value="Food">Food</option> 
     <option value="Beverage">Beverage</option> 
    </select> 

Ajax код

<script> 
function showCustomer(str) { 
    var xmlhttp;  
    if (str === "") { 
     document.getElementById("txtHint").innerHTML = ""; 
     return; 
    } 
    if (window.XMLHttpRequest) { 
     // code for IE7+, Firefox, Chrome, Opera, Safari 
     xmlhttp = new XMLHttpRequest(); 
    } else { // code for IE6, IE5 
     xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    xmlhttp.onreadystatechange = function() { 
     if (xmlhttp.readyState === 4 && xmlhttp.status === 200) { 
      document.getElementById("txtHint").innerHTML = xmlhttp.responseText; 
     } 
    } 
    xmlhttp.open("GET","itemtype.php?q="+str,true); 
    xmlhttp.send(); 
} 
</script> 

itemtype.php

<?php echo $_REQUEST['q'] ?> 

Теперь я хочу, чтобы получить результат в переменной PHP для, например: -

<?php $iamvariable="<div id='txtHint'></div>"; echo $iamvariable ?> 

Я хочу, чтобы получить результат от ajax до $iamvariable и я не знаю, как его получить, я просто попробовал с кодом выше, и я не смог его получить. Это их способ получить?

+4

пожалуйста форматировать это правильно –

+0

, почему вы хотите использовать Ajax тогда? Если вы хотите получить результат в php use curl или file get contents .... – Vickrant

+0

@Dagon Я попытался правильно управлять, надеясь, что все в порядке. – Bibek

ответ

0

использовать это: -

<select name="type" id="type"> 
     <option value="">---SELECT ITEM TYPE---</option> 
     <option value="Food">Food</option> 
     <option value="Beverage">Beverage</option> 
    </select> 
    <div id='txtHint'></div> 

эта линия включает в заголовке: -

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> 

написать этот скрипт в странице: -

<script> 
$(document).ready(function(){ 
    $("#type").on("change",function(){ 
     var data = $("#type").val(); 
     $.ajax({url: "itemtype.php",data:{type: data}, 
    type: 'post', success: function(result){ 
      $("#txtHint").html(result); 
     }}); 
    }); 
}); 
</script> 

itemtype.php

<?php echo $_POST['type']; ?> 
+0

как я могу показать этот результат в типе ввода, т.е. Bibek

+0

@Bibek для размещения содержимого запроса в поле '' используйте метод jquery 'val()': '$ ("#txtHint"). val (result); 'вместо' $ ("# txtHint").html (result); ' –

0

Если вы хотите получить результат с помощью AJAX вызова и присвоить его, а в следующей строке,

document.getElementById("txtHint").innerHTML = xmlhttp.responseText; 

попробовать это:

document.getElementById("txtHint").value = xmlhttp.responseText; 

innerHtml указывает содержимое HTML элемента. value устанавливает значение входного элемента.

Другой способ с помощью JQuery:

$("#txtHint").val(xmlhttp.responseText); 
+0

Спасибо Бену за ответ, но я использую код, который mukesh prajapat дал мне выше, и я знаю, что мне нужно что-то использовать в .html (result), но я не могу его найти. Не могли бы вы мне помочь? – Bibek

+0

@Bibek: Добавлен ответ в редакции. Надеюсь, это поможет вам. – Blessy

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