Why not encode a structure than keeps the record data and the flags separate
my $json = encode_json({ record => $data, ReturnedRecord => $return_count, DeleteRecord => $delete_count });
then no need to delete anything
var url = ".../update_tables.cgi"; var param = { "action":"delete_Record", "user_id":userid, }; $.getJSON(url, param, function(data){ if (data.ReturnedRecord){ loadJSONFormData(data.record); } }
sub delete_Record { my $userid = $query->param('user_id'); warn("Delete record based on user_id = '$userid'"); # SQL my $stmt_del = 'DELETE FROM users WHERE user_id = ?'; my $stmt_sel = ' (SELECT * FROM users WHERE user_id < ? ORDER BY user_id DESC LIMIT 1) UNION (SELECT * FROM users WHERE user_id > ? ORDER BY user_id ASC LIMIT 1)'; my $data = {}; my $return_count = 0; my $exit = 0; my $delete_count = $dbh->do($stmt_del,undef,$userid); if ($delete_count eq '0E0') { # Nothing deleted $delete_count = 0; } else { # select prev or next record my $sth = $dbh->prepare($stmt_sel); $sth->execute($userid,$userid); if ($data = $sth->fetchrow_hashref()){ $return_count = 1; } else { $exit = 1; $data = {}; } } # output my $json = encode_json({ record => $data, ReturnedRecord => $return_count, DeleteRecord => $delete_count }); print "Content-Type: application/json\n\n"; print $json; warn("Finished print $json"); exit($exit); }
In reply to Re^2: JSON Return Values
by poj
in thread JSON Return Values
by tultalk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |