我正在尝试将Google的API搜索结果保存在localhost的Mysql数据库中。
我的问题
我正在使用一个for
循环来展示书籍研究的所有可能结果,例如“哈利·波特”。
我使用AJAX进行此操作,然后循环结果。
主要问题是,如果要保存其中一个结果,保存的只是最后一个,因为每个变量在每个循环中都会被覆盖。
这是代码,saveBook.php只是一个.php文件,我在其中进行插入查询。
$.ajax({
url:"https://www.googleapis.com/books/v1/volumes?q=" + search,
dataType: "json",
type: 'GET',
success: function(data){
for(i=0; i < data.items.length; i++)
{
title = $( '<p> ' + data.items[i].volumeInfo.title + '</p>');
author = $('<p> ' + data.items[i].volumeInfo.authors + '</p>');
img = $('<img><a href=' + data.items[i].volumeInfo.infoLink +
'><br></br><button>Read More</button></a>' );
url= data.items[i].volumeInfo.imageLinks.thumbnail;
save = $('<br><button onclick="save()">Save</button></br>
</br>');
img.attr('src',url);
title.appendTo("#result");
author.appendTo("#result");
img.appendTo("#result");
save.appendTo("#result");
}
},
});
}
}
function save(){
$.ajax({
type:'POST',
data: {
url: url,
title: title,
author: author,
},
url: "saveBook.php",
success: function(data){
alert("Success!");
location.replace("home.php");
}
})}
另一个问题是:
我应该如何使用此JSON
data: {
url: url,
title: title,
author: author,
},
实际返回带有标题和作者的字符串,因为url已正确保存。
紫衣仙女
相关分类