私はajaxを使ってフォトアルバムを作っています。フォトアルバム - jquery ajax json + php
JSコード:
$(document).ready(function(){
$('#next').click(function(){
var next = $('#id').text();
$.ajax({
type: 'GET',
url: 'URL', //This I changed for this post
dataType: 'json',
data: { "id" : next},
success: function(data){
alert(data.error);
if(data.error == true)
{
alert(data.msg);
}
else
{
$('#pics').attr({
src : data.src,
witdth : data.width,
height : data.height});
$('#id').text(data.id);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus +' ' + errorThrown);
}
});
});
});
PHPファイルのコード:
if(is_integer($_GET['id']))
{
$error = false;
$next = $_GET['id'] + 1;
switch($_GET['id'])
{
case 1: $jsondata = '{"src" : "picture 01 valid path", ';
$jsondata .= '"width" : xxx, ';
$jsondata .= '"height" : xxx, ';
$jsondata .= ' "id" : '.$next;
break;
case 2: $jsondata = '{"src" : "picture 02 valid path", ';
$jsondata .= '"width" : xxx, ';
$jsondata .= '"height" : xxx, ';
$jsondata .= ' "id" : '.$next;
break;
...+cases...
default: $jsondata = '{"msg" : "An error occured. Please close the tab and enter again. Thanks."';
$error = true;
}
$jsondata .= ', "error" : '.$error.'}';
echo json_encode($jsondata, true);
}
htmlコード: ‹のIMG SRC = "有効なパス" 幅= "XXX" 高さ= "XXX" /&rsaquo ;
クロムジャバスクリプトコンソールでは、エラーは「エラー」がnullです。私は、成功しなくてもウェブ上で多くの組み合わせとポジションを試しています!これで私を助けることができますか?
ありがとうございます!
PS:私はまだこのソリューションは、フォトアルバムをナビゲートするかどうかわからない:Sこれを答えた後、他の質問です。..
十分なはずです、json_encodeをする必要はありません。有効なオブジェクトが戻ってきて、 'data'が存在することを確認してください。 'alert(data.error);を' console.log(data);で置き換えて、それが有効なオブジェクトであるかどうかを確認します。 – Richard