Не могу вытащить данные, полученные от клиента

Sonque

Новичок
Не пойму где ошибка

На клиенте через ajax поступают данные JSON на сервер:

PHP:
	App.prototype.sending = function (data) {
		var ajax = new window.XMLHttpRequest(),
			param;

		ajax.open("POST", "action.php", true);
		param = "data=" + data;
		ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

		ajax.onreadystatechange = function () {
			if (ajax.readyState === 4 && ajax.status === 200)
				alert(ajax.responseText);
		};
		ajax.send(param);
	};
на сервере они декодируются и извлекается email:

PHP:
<?php
if (isset($_POST['data'])) {
    $a = $_POST['data'];
    $b = json_decode($a);
    echo  $b['email'];
}
?>
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Может надо бы почитать ман, что возвращает функция?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
ты почитай и приходи, кстати код, я вижу, ты поправил. Опять не работает?
 

Sonque

Новичок
да

я уже методом тыка(


Со стороны php ошибок точно нет?
 

Sonque

Новичок
вся проблема в json данных

Я отправляю на сервер:

{"name":"Вася","phone":"12345123455","email":"[email protected]"}

Если в php вывести echo $_POST['data'];

то он вернет на клиент:

{\"name\":\"Вася\",\"phone\":\"12345123455\",\"email\":\"[email protected]\"}

Как превратить json в массив?
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
подозреваю, что у кого-то включены magic quotes
 

Sonque

Новичок
ага, включены.
Сейчас посмотрел на удаленном сервере - выключены, а на локальном включены

А как они по умолчанию выключены или включены? И Как их выключить?
 

Вурдалак

Продвинутый новичок
Если они включены по умолчанию, то это какая-то древняя версия PHP. Отключаются в php.ini, нужно погуглить по ключевым словам.
 

Sonque

Новичок
Погуглил)
В моем php.ini нет magic_quotes_qpc )

решил записью в .htaccess
 

Sonque

Новичок
новый трабл и снова c php ;(

Как оптравлять почту (mail()) в виде html-разметки?

пишу в 4-ом аргументе $headers :

PHP:
	$headers = 'MIME-Version: 1.0\r\n';
	$headers .= 'Content-type: text/html; charset=iso-8859-1\r\n';
Но не помогает
 
Сверху