 
			
				01.02.2016, 20:24
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 01.02.2016 
					
					
					
						Сообщений: 21
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Не понятки с JSON
			 
			
		
		
		
		Всем доброго времени суток. Народ, нужна помощь... есть обработчик АЯКСА:  
header('Content-Type: application/json; charset=utf-8');
require 'functions.php';
require 'admin/functions.php';
if(isset($_POST['password'])) {
    function testJson($connect) {
                   
        $pass = $_POST['password']; // Без всяких пока обработок
/*
        $sql = mysqli_query($connect, "SELECT * FROM `users` WHERE `id` = '$pass'");
        $res = mysql_fetch_array($sql);
*/     
        $data = array(
                "err" => 0,
                "id" => $pass,
                "name" => $res['name']);
    
        $data = json_encode($data); 
    }
    
    return $data;
}
echo testJson($connect);
Ну и конечно же сам JQ->Ajax
 
function TestUs(data) {
    var pass;
    var user = data;
    var title = "Введите пароль администратора";
    var result = prompt(title, pass);
    
    if(result) {
        
        $.ajax({
            url: "/test.php",
            type: "POST",
            data: {password: result},
            dataType: 'json',
            success: function (data) {
                
                var result = data;
                alert(result.err);
                console.log(result.id);
                
            }
        });    
    }
}
Так вот, если в самом обработчике снести инклуды и запрос на выборку, то JSON отправляет и принимает значения как нужно. Пробовал играться и с инклудами и с выборкой, без результатов. Кодировка в UTF-8 без BOM. Куда копать?  
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2016, 21:02
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от sergei1094
			
		
	 | 
 
	| 
		$pass = $_POST['password']; // Без всяких пока обработок
	 | 
 
	
 
 Почему или просто как пример?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2016, 21:05
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 01.02.2016 
					
					
					
						Сообщений: 21
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Покопал, проблему не решил. Дело в том что в том примере хоть что то приходит от сервера клиенту. А у меня что самое интересное, если открыть фаирбаг -> Сеть, и отправить данные, то во вкладке "Сеть" не отображается отправленный мой ПОСТ запрос, но и алерт срабатывает у меня после SUCCESS, который считывает err=0 в файле test.php. Может сказанное мною сейчас и тупо, но оно и есть так. Я даже не понимаю сейчас как прочитать хотя бы то что сервер якобы отправляет клиенту. 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2016, 21:07
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 01.02.2016 
					
					
					
						Сообщений: 21
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от laimas
			 
		
	 | 
 
	| 
		Почему или просто как пример?
	 | 
 
	
 
 Просто как пример. Я с JSON только начинаю работать, по этому не углубляюсь сейчас безопасностью своего тестового скрипта  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2016, 21:19
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 01.02.2016 
					
					
					
						Сообщений: 21
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Сейчас снёс инклуды, и в фаирбаге теперь наблюдаю успешную отправку своего ПОСТ запроса. Но при этом конечно же нарушается подключение к БД и одно из полей в ответе отображается как NULL, ну не суть. Интересно то, что при подключении инклудов, скрипт всё равно выполняется, но в каком то не понятном фоном режиме так сказать...Т.е. если в файле test.php в масииве $data => err, указать к примеру 555, затем вернутся в броузер и сделать рефрэш странички, а затем отправить снова данные ( при подключённых includ'ах ), то в фаирбаге нету отправленного пост запроса в сторону test.php, а алет со значением 555 срабатывает, значит данные всё же отправляются...и...в общем я запутался 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2016, 21:19
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 А что там сложного в mysqli с обработкой, плейсхолер в запрос подставить. 
 
Но если алерт срабатывает у меня после SUCCESS, который считывает err=0, значит JSON корректный возвращается. Если не работает при запросах и подключении, то есть ошибки на сервере, которые возвращаются, парсер JQ при этом не выдаст ошибки "не валидно". 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2016, 21:27
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 01.02.2016 
					
					
					
						Сообщений: 21
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от Rise
			 
		
	 | 
 
	| 
		sergei1094, до конца читать не пробовал, чем всё закончилось смотрел?
	 | 
 
	
 
 Я ведь вроде доступно вам выразил что с кодировками у меня всё нормально, я и пересоздавал файлы, и пересохранял играясь с кодировками и тему я ту тоже всю прочитал что вы мне посоветовали, не нашёл я в той теме ответа на свой вопрос. У меня есть и по мимо этого всего файл функций с php скриптами, довольно-таки глобальный, используемый в одном из своих реальных сетевых проектов, этот файл чист как слеза, без всяких тому BOM и тому прочих, пробовал отправлять и на него JSON, и всё равно беда обламывается на том что как только я пытаюсь с коннектироватся к БД или подключаю инклуд, либо вообще ничего не отправляется и не приходят никакие ответы, либо " как то там в фоновом режиме отправляется", то чего я не вижу...но и ответ в виде алерта долетает с фиксированным значением, указанным в массиве  $data 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2016, 21:29
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 01.02.2016 
					
					
					
						Сообщений: 21
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от laimas
			 
		
	 | 
 
	
		А что там сложного в mysqli с обработкой, плейсхолер в запрос подставить. 
 
Но если алерт срабатывает у меня после SUCCESS, который считывает err=0, значит JSON корректный возвращается. Если не работает при запросах и подключении, то есть ошибки на сервере, которые возвращаются, парсер JQ при этом не выдаст ошибки "не валидно".
	 | 
 
	
 
 Как он может корректно возвращаться, если я его не вижу в фаирбаге? Как мне отслеживать тогда то, что я отправляю!?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2016, 21:46
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 14.01.2015 
					
					
					
						Сообщений: 12,989
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Тип принимаемых данных в запросе изменить на text, запрос парсить средствами JS - JSON.parse с обработкой исключительных ситуаций. Уверен, что будет ошибка. 
 
В каком браузере отладка? 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.02.2016, 21:48
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Интересующийся 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 01.02.2016 
					
					
					
						Сообщений: 21
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от Rise
			 
		
	 | 
 
	| 
		sergei1094, включаемые файлы могут включать другие файлы, другие файлы могут включать также другие файлы и тд, следовательно все цепочки файлов подлежат проверке на предмет UTF-8 без BOM.
	 | 
 
	
 
 Я прекрасно знаю данную последовательность, спасибо. Но дело то всё равно в другом. Вот сейчас я сделал вот так:
 
if(isset($_POST['password'])) {
    
    function asd() {
        
        header('Content-type: application/json; charset: utf-8');
        
        require 'functions.php';
        #require 'admin/functions.php';
        
        $pass = $_POST['password'];
        $sql = mysqli_query($connect, "SELECT * FROM `users` WHERE `id` = '$pass'");
        $res = mysql_fetch_array($sql);
     
        $data = array(
                "status" => 1,
                "id" => $pass,
                "name" => $res['name']);
    
        $data = json_encode($data);
        
        return $data;
        exit(); 
    }  
}
Со включёнными инклудами, JSON отдаёт результат, но стоит раскоментировать выборку к БД, то вообще на глухо молчит. Без выборки возвращает NULL и всё то что я его прошу, с выборкой же всё глушится на тихо  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 
 
 
 
	 | 
 
 
 |