2013-05-10 2 views
1

У меня есть имя пользователя и два других элемента, отправленные из формы, я могу получить их по id в файле ajax .js. теперь я хочу передать эти три элемента в файл php. Я могу создать три переменные, каждая из которых назначена новому XmlHttpReqest, например. var XmlHttpusername = new XmlHttpRequest().Значения параметров запроса с использованием XmlHttpRequest

теперь как передать эти три значения запроса в этот единственный файл php, в котором я должен сравнить эти три вещи в базе данных и сгенерировать сообщение в зависимости от ситуации. Мой код AJAX выглядит следующим образом:

function GetXmlHttpObject() 
{ 
     if (window.XMLHttpRequest) 
      { 
    return new XMLHttpRequest(); 
      } 
     else if (window.ActiveXObject) 
      { 
// code for IE6, IE5 
    return new ActiveXObject("Microsoft.XMLHTTP"); 
      } 
     return null; 
} 

// User name function 
var XMLHttpUsername=false; 
var XMLHttpSec_q=false; 
var XMLHttpSec_a=false; 
function UserAvail(resp) 
{ 
    XMLHttpUsername=GetXmlHttpObject(); 
    if (XMLHttpUsername==null) 
    { 
     alert ("Your browser does not support AJAX!"); 
     return; 
    } 
    XMLHttpUsername.open("GET","checkUser.php?user="+resp,true); 
    XMLHttpUsername.onreadystatechange = function(){ 
     if (XMLHttpUsername.readyState==4 && XMLHttpUsername.status == 200){ 
     document.getElementById('userChange').innerHTML=XMLHttpUsername.responseText; 
     } 
    } 
    XMLHttpUsername.send(null); 
} 

function InputCheck(resp) 
{ 
    XMLHttpUsername=GetXmlHttpObject(); 
    XMLHttpSec_q=GetXmlHttpObject(); 
    XMLHttpSec_a=GetXmlHttpObject(); 

    if (XMLHttpInputs==null||XMLHttpSec_a==null||XMLHttpSec_q==null){ 
    alert ("Your browser does not support AJAX!"); 
     return; 
    } 
    XMLHttpSec_a.open("GET","checkUser.php?user="+user,true); 
    XMLHttpSec_a.onreadystatechange = function(){ 
    if (XMLHttpSec_a.readyState==4 && XMLHttpUsername.status == 200){ 
     document.getElementById('submitMain').innerHTML=XMLHttpSec_a.responseText; 
    } 
    } 
    XMLHttpSec_a.send(null); 
} 
+0

Вы должны исправить свой титул, это не вопрос. Также не используйте GET для отправки конфиденциальных данных. – Evert

+0

Вы подумали об использовании фреймворка, чтобы помочь с этим? – miah

ответ

0

Вы можете пройти каждый из трех значений в качестве параметров в одном запросе AJAX:

XMLHttpSec_a.open("GET","checkUser.php?parameter1=" + parameter1 + "&parameter2=" + parameter2 + "&parameter3=" + parameter3); 

Там нет необходимости создавать отдельные запросы на подошву цель отправки нескольких фрагментов данных.

+1

Вы должны использовать 'encodeURIComponent()', чтобы гарантировать правильность кодирования параметров, если они содержат специальные символы. – Barmar

+0

большое спасибо сэр. – user2371258

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