Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.03.2014, 11:25
Аватар для maternik
Аспирант
Отправить личное сообщение для maternik Посмотреть профиль Найти все сообщения от maternik
 
Регистрация: 15.10.2013
Сообщений: 31

Отправить массив на сервер
Всем привет!
Я тут запилил массив и хочу с помощью ajax заслать его на сервер и там записать, используя php. Фреймворков не юзаю. К печали, получаю на сервере строку, склеенную из массива, т.е. запятые повсюду. Хочу иметь именно массив, чтоб его так, построчно (будет html-разметка типа).
var uri = "spisok.php";
    var xhr; 
	
	if (window.XMLHttpRequest) {
		 xhr = new XMLHttpRequest();
	}
	else {
		if (window.ActiveXObject) {
			try {
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) { }
		}
	}
	   
   
   if (xhr){
    xhr.onreadystatechange = function() { 
      if (xhr.readyState == 4) {
        if(xhr.status == 200) { 
          document.getElementById("текст2").innerHTML = xhr.responseText; 
        }
      }
    };
		 xhr.open('POST', 'spisok.php', true); 
 xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  
	xhr.send("a=" +  наЗапись); 
		
		} else{alert("Ошибка при создании XMLHttp запроса");}

сервак:
<?php
 $a = $_POST["a"];
 $count=count($a); 
 $h = fopen("q.html","w");
 fwrite($h,$a);
 /*for ($i=0; $i<$count; $i++){
  fwrite($h,$a[$i]."/n");
 }*/
 fclose($h);
?>
Ответить с цитированием
  #2 (permalink)  
Старый 22.03.2014, 11:44
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Массив ты передать никак можешь. Ты можешь передать только строку.
Есть замечательный формат данных JSON. Почитай про него и передавай свой массив в этом формате - и javascript, и php имеют нативные функции для конвертации данных и в JSON, и обратно.
Ответить с цитированием
  #3 (permalink)  
Старый 22.03.2014, 11:46
Аватар для maternik
Аспирант
Отправить личное сообщение для maternik Посмотреть профиль Найти все сообщения от maternik
 
Регистрация: 15.10.2013
Сообщений: 31

ОК
на крайняк split попробую
Ответить с цитированием
  #4 (permalink)  
Старый 22.03.2014, 12:03
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от Erolast
Массив ты передать никак можешь.
Ну на самом деле можно.
xhr.send("a[]=abc&a[]=cde&a[]=fgh");

На серваке получим массив. Это такая фишка PHP (но не только).
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отправить, когда четко соберется массив vas88811 Events/DOM/Window 11 26.02.2014 19:55
Отправить массив через get на сервер sonntagausgang Общие вопросы Javascript 2 25.05.2013 22:39
Через ajax отправить много данных из таблицы на сервер Heger jQuery 3 29.08.2012 17:51
Реально ли отправить файл на сервер AJAX ????? macexa jQuery 11 14.01.2011 06:30
записать массив байт на сервер karabura AJAX и COMET 1 06.08.2009 04:21