[JS][jquery][Ajax][Json]Problem z odbieraniem danych Json


(Pbuderaski) #1

Witam, mam problem, ponieważ po wykonaniu poniższego kodu, skrypt wykonuje kod z error: co jest oczywiście oznaką błędu. Nie mam pojęcia o co chodzi, męczę się z tym parę godzin.

JS:

$(document).ready(function() {

    $.ajax({

        type: "POST",

        url: "scripts/ajax_create_gal_array.php",

        dataType : 'json',

        success : function(json) {

			alert("udalo sie");

			console.log(json);

        },

		error : function(error) {

            alert("Wystąpił błąd" );

			console.log(error);

			$(document).ajaxError(

			function (event, jqXHR, ajaxSettings, thrownError) {

				console.log('[event], [jqXHR], [ajaxSettings], [thrownError])');

			})

        }


    });

});

Kod php:

$stuktura['galerie']['db'] = Array('sciezka'=>'./layout/bg/', 'files'=>Array('trawa.jpg', 'balon.jpg'));

$stuktura['galerie']['db1'] = Array('sciezka'=>'./photos/galleries/street/', 'files'=>Array( '01.jpg', '02.jpg', '03.jpg', '04.jpg'));

$stuktura['galerie']['db2'] = Array('sciezka'=>'./photos/galleries/people/', 'files'=>Array( '01.jpg', '02.jpg'));


echo trim(json_encode($stuktura));

PS: A to błąd wyrzucany przez mój debuger w error:

[event]], [jqXHR]], [ajaxSettings]], [thrownError])

(Konrad Kosowski) #2

Tak na pierwszy rzut oka, to przede wszystkim masz błąd w samej deklaracji callbacka dla error. Powinno to wyglądać tak:

(...),

error: funciton(xhr, ajaxOptions, thrownError){

//tutaj obsługa błędu w tym:

console.log('[event], [jqXHR], [ajaxSettings], [thrownError])');

},

A po drugie sam kod php… Zwraca Ci on na pewno jsona, a nie czasem aby html/text?