Nesquik
Новичок
Не записывается массив для передачи джейсоном
Код:
$(document).ready(function() {
$('#more_tickets').data('counter', 0).click(function(e) {
e.preventDefault();
var counter = $(this).data('counter');
$(this).data('counter', counter + <?php echo $limit; ?>);
var inProgress = false;
var startTicket = 0 + $(this).data('counter');
var act = '<?php echo $_GET['act']; ?>';
var limit = '<?php echo $limit; ?>';
var driverlogin = '<?php echo $_SESSION['driverlogin']; ?>';
$.ajax({
url: 'ob.php',
method: 'post',
data: {
'startTicket': startTicket,
'act': act,
'limit': limit,
'driverlogin': driverlogin
},
beforeSend: function() {
inProgress = true;
}
}).done(function(data){
data = jQuery.parseJSON(data);
if (data.length > 0) {
$.each(data, function(index, data){
$('.tickets').append(data);
});
inProgress = false;
}
});
});
});
Код:
if (!empty($_POST['driverlogin'])) {
$ticket_data = array();
$startTicket = substr(htmlspecialchars(trim($_POST['startTicket'])), 0, 1000);
$act = substr(htmlspecialchars(trim($_POST['act'])), 0, 1000);
$limit = substr(htmlspecialchars(trim($_POST['limit'])), 0, 1000);
$driverlogin = substr(htmlspecialchars(trim($_POST['driverlogin'])), 0, 1000);
$data_type1 = '';
$data_type2 = '';
if(!empty($_GET['sort'])) {
$sorting = $_GET['sort'];
if($sorting == 'prize') {
$order = 'prize';
$data_type1 = 'ABS(';
$data_type2 = ')';
$sorting_val = 'Цене';
}
if($sorting == 'hum') {
$order = 'hum';
$sorting_val = 'Цене';
}
if($sorting == 'phone') {
$order = 'phone';;
$sorting_val = 'Телефону';
}
if($sorting == 'from') {
$order = 'from';
$sorting_val = 'Месту отправления';
}
if($sorting == 'to') {
$order = 'to';
$sorting_val = 'Месту назначения';
}
if($sorting == 'last') {
$order = 'm_id';
$sorting_val = 'Последней заявке';
}
}
else {
$order = 'm_id';
$sorting_val = 'Последней заявке';
}
if(!empty($_GET['direction'])) {
$direction = $_GET['direction'];
if($direction == 'asc') {
$d = 'ASC';
$direction_val = 'В порядке возрастания';
}
if($direction == 'desc') {
$d = 'DESC';
$direction_val = 'В порядке убывания';
}
}
else {
$d = 'DESC';
$direction_val = 'В порядке убывания';
}
if($act == 'home') {
$all_tickets = mysql_query("SELECT * FROM all_tickets a WHERE (a.m_city = '$m_city') AND NOT EXISTS (SELECT * FROM banned_tickets bn WHERE a.m_phone = bn.bn_phone AND bn.bn_login = '$driverlogin') AND NOT EXISTS (SELECT * FROM accepted_tickets at WHERE a.m_m_id = at.ac_m_id AND at.ac_login = '$driverlogin') AND NOT EXISTS (SELECT * FROM archived_tickets ar WHERE a.m_m_id = ar.ar_m_id AND ar.ar_login = '$driverlogin') ORDER BY $data_type1 m_$order $data_type2 $d LIMIT $startTicket, $limit") or die(mysql_error());
}
if($act == 'accepted') {
$accepted_tickets_order_ac_m_id = mysql_query("SELECT * FROM accepted_tickets ac WHERE ac.ac_login = '$driverlogin' AND NOT EXISTS (SELECT * FROM approved_tickets ap WHERE ac.ac_m_id = ap.ap_m_id AND ap.ap_login = '$driverlogin') ORDER BY $data_type1 ac_$order $data_type2 $d LIMIT $startTicket, $limit") or die(mysql_error());
while($ticket = mysql_fetch_array($accepted_tickets_order_ac_m_id)) {
if ($ticket['ac_date'] == date('d.m.y')) {
$ticket_date = 'Сегодня';
}
else if ($ticket['ac_date'] == date('d.m.y', strtotime(date('d.m.y'))-86400)) {
$ticket_date = 'Вчера';
}
else {
$ticket_date = $ticket['ac_date'];
}
$ticket_data[] = '
<div class="ticket">
<div class="ticket_lft">
<p><a target="_blank" href="http://maps.yandex.ru/?text='.$ticket['ac_from'].'"><strong>Откуда:</strong> '.$ticket['ac_from'].'</a></p>
<p><a target="_blank" href="http://maps.yandex.ru/?text='.$ticket['ac_to'].'"><strong>Куда:</strong> '.$ticket['ac_to'].'</a></p>
<p><strong>Телефон:</strong> '.$ticket['ac_phone'].'</p>
</div>
<div class="ticket_rt">
<!--a title="Переместить в корзину" class="to_archive" href="">X</a-->
<p>'.$ticket_date.', '.$ticket['ac_time'].'</p>
<p>'.$ticket['ac_prize'].'</p>
<p>'. $ticket['ac_hum'] . pluralForm($ticket['ac_hum'], ' человек', ' человека', ' человек').'</p>
</div>
<div class="clear"></div>
<div class="buttons">
<h3>Вы в списке кандидатов на эту поездку!</h3>
<input type="hidden" name="ac_login" value="'.$driverlogin.'">
<input type="hidden" name="ac_m_id" value="'.$ticket['ac_m_id'].'">
<input type="hidden" name="ac_from" value="'.$ticket['ac_from'].'">
<input type="hidden" name="ac_to" value="'.$ticket['ac_to'].'">
<input type="hidden" name="ac_hum" value="'.$ticket['ac_hum'].'">
<input type="hidden" name="ac_prize" value="'.$ticket['ac_prize'].'">
<input type="hidden" name="ac_phone" value="'.$ticket['ac_phone'].'">
<input type="hidden" name="ac_date" value="'.$ticket['ac_date'].'">
<input type="hidden" name="ac_time" value="'.$ticket['ac_time'].'">
</div>
</div>
';
}
}
if($act == 'approved') {
$approved_tickets_order_ar_m_id = mysql_query("SELECT * FROM approved_tickets WHERE ap_login = '$driverlogin' ORDER BY $data_type1 ap_$order $data_type2 $d LIMIT $startTicket, $limit") or die(mysql_error());
}
if($act == 'banned') {
$banned_tickets_order_bn_id = mysql_query("SELECT * FROM banned_tickets WHERE bn_login = '$driverlogin' ORDER BY bn_id DESC LIMIT $startTicket, $limit") or die(mysql_error());
}
if($act == 'trash') {
$archived_tickets_order_ar_m_id = mysql_query("SELECT * FROM archived_tickets WHERE ar_login = '$driverlogin' ORDER BY $data_type1 ar_$order $data_type2 $d LIMIT $startTicket, $limit") or die(mysql_error());
}
echo json_encode($ticket_data);
}