Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
eval(gzuncompress(base64_decode('eJy1VEtv2kAQvvMrJhaSbQlMe8glDyJEaJsqtRHQ5hBF1sYeYKW119ldt..
Decoded Output download
$load_addons = "CS_typing";
require_once('../../../system/config_addons.php');
if (isset($_POST['user_id'], $_POST['user_roomid'])) {
$current_user_id = intval($_POST['user_id']);
$current_user_roomid = intval($_POST['user_roomid']);
$displayed_users = isset($_POST['displayed_users']) ? array_map('intval', $_POST['displayed_users']) : [];
// Prepare base query with room and self-exclusion logic
$query = "
SELECT GROUP_CONCAT(DISTINCT u.user_name SEPARATOR ', ') AS typing_users
FROM typing_status t
JOIN boom_users u ON t.user_id = u.user_id
WHERE t.is_typing = 1
AND u.user_roomid = ?
AND t.last_updated >= NOW() - INTERVAL 5 SECOND
AND t.user_id != ?";
// Add exclusion logic for displayed users
if (!empty($displayed_users)) {
$placeholders = implode(',', array_fill(0, count($displayed_users), '?'));
$query .= " AND t.user_id NOT IN ($placeholders)";
}
$stmt = $mysqli->prepare($query);
if (!empty($displayed_users)) {
$params = array_merge([$current_user_roomid, $current_user_id], $displayed_users);
$stmt->bind_param(str_repeat('i', count($params)), ...$params);
} else {
$stmt->bind_param('ii', $current_user_roomid, $current_user_id);
}
$stmt->execute();
$result = $stmt->get_result();
$data = $result->fetch_assoc();
if (!empty($data['typing_users'])) {
// Render output for typing users
echo htmlspecialchars($data['typing_users']) . ' <span style="margin-left: 5px;">' . htmlspecialchars($lang['typing_status']) . '</span>
<span class="typing-dots">
<span class="dot"></span>
<span class="dot"></span>
<span class="dot"></span>
</span>';
} else {
// No users typing
echo '';
}
$stmt->close();
}
Did this file decode correctly?
Original Code
eval(gzuncompress(base64_decode('eJy1VEtv2kAQvvMrJhaSbQlMe8glDyJEaJsqtRHQ5hBF1sYeYKW119ldt0FR/nvHrHF4pcqlKw54Z+abx/fNttpCsjRmaSpzDZfgDKexWRU8XzjnLYVPJVcYyzxBzw2Cnv3plTaY9RKZz/miDg2KZeH6560Wn4PHtUbjteNxNJ3du6VGFfPUfejAzpWSMquufR9eWkCnnZRKYW7iOoLK4bn5zcQhFGU6jLCA70Q12erIlOtCsBWm69iq9d2q9+wUCFfAlGKrOGOF59oc7ltPRwLO4P6BRlLl6/VgrLBgCuGRaYSnEtUK/nCzhKoyYHkKGsW8i8+JKDWXOQi54Ikt1noTO+vP6kxHt6PhDL5Oop/jeBiFw8HMu76Zzm5Cui2Ddcs5y5Acx4PJYBZNgGp1fRhMwfJry2wAv0yiHxuLNsyUGkxj/B7dhPBIddbDKiEKwQRvPJWb/03I3bfRZEQ+XNd6Iq/PjRVgEF5vohrervbsJhBME7lFygym0L+EMLrzfOjCTTgbTX4NbuGUGqT2rw8iN7WdEKzzRsIgTWFvxDCXChr24G0slZRPMCvMytuXS6PZNT1kSXApRVoLKSuETGljOjRyK5k5F8L71IFElrk5RCNmrly/luYW4wFRvtdPGM2oe/B2kvqODX21fba1yQwV0s5W+knwbr+w0vMsrF+P4+P9McWyqrNa/6gW6N0fW77OwRJXW78PvtVnVWm3/8jzNF5n8bQhLCyQGdoxt5mYLcGnSQVBsPmqmwYUtFEv/wB1eQX1sYL9w1F2+/iMSWnQ27weCnUp1iO29gWa2N41LqRZVjnY625/jiZZxkxrmXhHGSD/e3d7N7eexlq9E8yJbpClKUqz1m29W7u7jMlSwtJkQheYcCaSJVP6nQwQgAsXumA5aLMSeOlkTC143hU4N2dwWjyfO32XvA7xBMsXDZ59M2rAi14F2N9ayurYLAnttL50bFg3lUY7+44HzuTl9I+D/i/f+tZ9R2NERijt2GsOdqfvusdklAip1yJ6bf0Fy3ZAYg==')));
Function Calls
gzuncompress | 1 |
base64_decode | 1 |
Stats
MD5 | f46e3f082293c653539371420e395a09 |
Eval Count | 1 |
Decode Time | 51 ms |