Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   JSON или XML (https://javascript.ru/forum/misc/9532-json-ili-xml.html)

Kolyaj 29.05.2010 08:09

B~Vladi,
http://json.org/ вот грамматика JSON. Где там перевод строки? Не путать escape-последовательность \n с переводом строки.

Цитата:

Сообщение от B~Vladi
Да, но опять же если на клиент всё поступает в виде JSON - как быть? "\n" не помогают.

Не понял.

micscr 29.05.2010 09:43

Цитата:

Сообщение от B~Vladi (Сообщение 56926)
Да, но опять же если на клиент всё поступает в виде JSON - как быть? "\n" не помогают.

Вот эта функция json_encode кириллицу представляет utf-кодами, а символы перевода строк заменяет их строковыми эквивалентами, которые при eval станут в js переводом строки. Т.е. что то типа:
var dd = '\u0410' + '\\' + 'r' + '\\' + 'n' + '\u042f'; // вот такое получили от сервера
alert(dd);
var str = 'dd1 = "' + dd + '"';
eval(str);
alert(dd1); // наш результат

mycoding 12.06.2010 12:28

Сейчас пытаюсь загрузить данные из mysql, а потом перевести их в json.
Вот код
if(isset($_POST['subject'])){
	$subject=$_POST['subject'];
	include '../config.php';
	$link = mysql_connect($host, $mysql_user, $mysql_password) or die("Could not connect: " . mysql_error());
	mysql_select_db($database, $link) or die ('Can\'t use $database : ' . mysql_error());
	$sql="SELECT * FROM `subjects` where `subjectShort`='$subject'";
	if(!$rs = mysql_query($sql)){
		$answer='[{success:false}]';
	}else{
	    $row=mysql_fetch_array($rs);
			$rs = mysql_query($sql);
			$arr=array();			
			while($obj=mysql_fetch_object($rs)){
				$arr[]=$obj;				
			}										
			$answer = json_encode($arr);
	}
	echo $answer;
	//echo "[{subjectShort:'matan',subjectFull:'Математический анализ',namesBooks:['Демидович','Тест1']}]";
}
?>


ПОчему то приходит только одна одно значение, т.е. в $arr все есть, а строка json_encode($arr); возвращает только [{"subjectShort":"matan","subjectFull":null,"namesB ooks":null}]

B@rmaley.e><e 12.06.2010 13:06

Цитата:

Сообщение от mycoding
sql="SELECT * FROM `subjects` where `subjectShort`='$subject'";
    if(!$rs = mysql_query($sql)){
        $answer='[{success:false}]';
    }else{
        $row=mysql_fetch_array($rs);
            $rs = mysql_query($sql);

Это что за бред?

micscr 13.06.2010 15:17

mycoding, погляди тут как доставать данные из таблички mysql.


Часовой пояс GMT +3, время: 01:54.