У меня есть эта функция PHP:
if(($_POST['id']=="pm_read") && (isset($_POST['pm_id'])) && (ctype_digit($_POST['pm_id'])) && (isset($_SESSION['nickname']))) {
$update=mysql_query("UPDATE pm SET readed='1' WHERE id='".$_POST['pm_id']."' AND receiver='".$_SESSION['nickname']."'",$mydb);
$query=mysql_query("SELECT COUNT(id) FROM pm WHERE receiver='".$_SESSION['nickname']."' AND readed='0' AND receiver_delete='0' ORDER by date DESC",$mydb);
$arrayPm[0]=mysql_result($query,0,'COUNT(id)');
$query=mysql_query("SELECT message FROM pm WHERE id='".$_POST['pm_id']."' AND receiver='".$_SESSION['nickname']."'",$mydb);
$arrayPm[1]=mysql_result($query,0,'message');
echo json_encode($arrayPm);
}
На стороне клиента я получаю этот массив через функцию jQuery:
$.ajax({
type: 'POST',
cache: false,
url: 'pm/pm_ajax.php',
data: 'pm_id='+$(this).attr('id')+'&id=pm_read',
success: function(data) {
... here I'll print somethings...
}
});
К сожалению, если я печатаю data
, я получаю(например) строка ["2", "message"] .Итак, если я попытаюсь сделать alert (data [0]) , я увижу только [.
Как я могу получить доступ к этому массиву, печатая правильный результат?Я имею в виду:
данные [0] должны печатать 2 , а данные [1] должны печатать сообщение ...