Итак, у меня есть два файла: index.php и query.php.
Проблема в том, что я не знаю, как использовать массив (msg.d), полученный ajax. Вывод моего массива:
{"s":0,"d":[{"userPostID":"1","userID":"1","postID":"1","choice":"1"},{"userPostID":"2","userID":"1","postID":"2","choice":"0"},{"userPostID":"3","userID":"1","postID":"3","choice":"1"}]}
Что я хочу сделать, так это перебрать массив так, чтобы
while (i < array.length){
if (msg.d[i]['choice'] = 1) {
//do something with msg.d[i]['postID']
} else if (msg.d[i]['choice'] = 0) {
//do something else with msg.d[i]['postID']
}
i++
}
Я никогда раньше не работал с массивами объектов и из того, что я могу собрать, то, что я пытаюсь сделать, довольно сложно, и я не могу понять примеры, которые я нахожу.
index.php
<script type="text/javascript">
$(document).ready(function() {
// set $checked values
$.ajax({
url: 'query.php',
type: 'POST',
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
cache: false,
success: function (msg) {
console.log(msg);
},
error: function (x, e) {
alert("The call to the server side failed.");
}
});
});
</script>
<?php
$data = mysql_query("SELECT * FROM Posts LEFT JOIN userPosts ON Posts.postID = userPosts.postID AND userPosts.userID = $userID") or die(mysql_error());
while($row = mysql_fetch_array( $data )){
?>
query.php
<?php
$query = mysql_query("SELECT * FROM userPosts WHERE userPosts.userID = $userID") or die(mysql_error());
if (mysql_num_rows($query) == 0)
{
echo 'error';
}
else
{
echo json_encode(mysql_fetch_assoc($query));
}
?>
Я знаю, я близко ...
Там нет ошибок!