AJAX ТЕХНОЛОГИЯ

Титульная > Общее описание > Подпрограммы


_

Запись данных в XML документ

Пусть serveraddressreceive содержит URL папки с XML-документами на сервере. Для записи данных от клиента на сервере требуется разместить PHP-процедуру putdata.php, которая создаст XML документ, взяв данные, передаваемые методом POST.

Файл putdata.php

<?
if (isset($_POST["password"])){
$name=$_POST["password"]; $message=$_POST["data"];
}
else {
$name='data'; $message=$_POST["data"];
}
$file_ms=$name.".xml";
$message=StripSlashes('<?xml version="1.0" encoding="UTF-8"?><root><data>'.$message.'</data></root>');
$deleted = unlink($file_ms);
$fp = fopen($file_ms,"a+"); $fw = fwrite($fp,$message); fclose($fp);
?>

В данном случае password содержит имя создаваемого XML документа, а второй параметр содержит данные data. StripSlashes настраивает фильтр пропускать типичные для XML конструкции в записываемый файл.

Этой процедуре данные передаются при помощи Ajax технологии из клиентского приложения.

<script language='JavaScript'>
     function ajaxWrite(password,putmessage){
       var xmlObj2 = null;
       var contentType = "application/x-www-form-urlencoded; charset=UTF-8";
       if(window.XMLHttpRequest){
         xmlObj2 = new XMLHttpRequest();
       } else if(window.ActiveXObject){
         xmlObj2 = new ActiveXObject("Microsoft.XMLHTTP");
       } else {
         return;
       }
       xmlObj2.open ('POST',serveraddressreceive+'putdata.php',false);
       xmlObj2.setRequestHeader("Content-Type", contentType);
       xmlObj2.send('password='+password+'&data='+putmessage);
     }
</script>

Передаваемые методом POST параметры отделяются амперсантом &. Рассматриваемая технология позволяет клиентскому приложению обмениваться данными с сервером, посылая на него данные. Логическая переменная (false) указывает на синхронный тип запроса на запись.

artspb.com   

 


 

_