Esempio n. 1
0
    $result = $mysqli->query($query);
    if (count($result) <= 0 || is_null($result)) {
        echo '0';
        exit;
    }
    if (!$result) {
        echo 'ko';
        exit;
    }
    foreach ($result as $i => $row) {
        $result[$i]['employer'] = htmlspecialchars_decode($row['employer']);
    }
    $response = array('purchases' => array('purchase' => $result));
    header('Content-type: text/xml');
    echo $xml_dom->get_xml_from_array($response);
    exit;
}
if ($_POST['action'] == 'confirm_payment') {
    $employer = new Employer($_POST['id']);
    $mysqli = Database::connect();
    $query = "SELECT number_of_slot FROM employer_slots_purchases \n              WHERE employer = '" . $employer->id() . "' AND transaction_id = '" . $_POST['txn_id'] . "' LIMIT 1";
    $result = $mysqli->query($query);
    $employer->add_slots($result[0]['number_of_slot']);
    $query = "UPDATE employer_slots_purchases SET \n              transaction_id = '" . $_POST['payment_id'] . "', \n              purchased_on = NOW(), \n              on_hold = 0 \n              WHERE employer = '" . $employer->id() . "' AND transaction_id = '" . $_POST['txn_id'] . "'";
    if ($mysqli->execute($query) === false) {
        echo 'ko';
        exit;
    }
    echo 'ok';
    exit;
}
Esempio n. 2
0
    // fwrite($handle, 'Subject: '. $subject. "\n\n");
    // fwrite($handle, $message);
    // fclose($handle);
    // 2. Update the purchase history
    $query = "INSERT INTO employer_slots_purchases SET \n              employer = '" . $employer_id . "', \n              transaction_id = '" . $txn_id . "', \n              purchased_on = '" . $purchased_on . "', \n              price_per_slot = " . $price . ", \n              number_of_slot = " . $qty . ", \n              total_amount = " . $amount . ", \n              on_hold = 0";
    if ($mysqli->execute($query) === false) {
        $handle = fopen($error_log_file, 'a');
        fwrite($handle, date('Y-m-d H:i:s') . ' Unable to log transaction (txn_id: ' . $txn_id . ') for employer ' . $employer_id . '.' . "\n");
        fclose($handle);
        exit;
    }
    $handle = fopen($txn_log_file, 'a');
    fwrite($handle, date('Y-m-d H:i:s') . ' Logged transaction (txn_id: ' . $txn_id . ') for employer ' . $employer_id . '.' . "\n");
    fclose($handle);
    // 3. Update the slots
    if ($employer->add_slots($qty) === false) {
        $handle = fopen($error_log_file, 'a');
        fwrite($handle, date('Y-m-d H:i:s') . ' Unable to add ' . $qty . ' slots for employer ' . $employer_id . '.' . "\n");
        fclose($handle);
        exit;
    }
    $handle = fopen($txn_log_file, 'a');
    fwrite($handle, date('Y-m-d H:i:s') . ' Added ' . $qty . ' slots for employer ' . $employer_id . '.' . "\n");
    fclose($handle);
} else {
    $handle = fopen($error_log_file, 'a');
    fwrite($handle, date('Y-m-d H:i:s') . ' Either _POST[txn_id] or _POST[custom] is not found.' . "\n");
    fclose($handle);
    // $handle = fopen('/tmp/ipn_feedback.txt', 'w');
    // foreach ($_POST as $key=>$value) {
    //     fwrite($handle, '['. $key. '] => '. $value. "\n");