Je travaille sur un album photo en utilisant ajax.Album photo - jquery ajax json + php
le code:
$(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);
}
});
});
});
code de fichier 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);
}
code HTML: & lsaquo; img src = "chemin valide" width = hauteur "xxx" = "xxx"/& rsaquo ;
Avec la console javascript de chrome, l'erreur est que "erreur" est nulle. J'ai essayé beaucoup de combinaisons et de possibilités sur le web sans aucun succès! Peux-tu m'aider avec ceci?
Merci d'avance!
PS: Je ne suis toujours pas sûr que cette solution naviguer dans l'album photo: S C'est autre question après avoir répondu à cette ..
Vérifiez la réponse à l'aide de l'inspecteur Chrome ou Firebug. Assurez-vous qu'un objet valide revient et que 'data' existe. Et remplacez 'alert (data.error);' par 'console.log (data);' pour voir si c'est un objet valide. – Richard