MMCT TEAM
Server IP : 217.21.85.138  /  Your IP : 216.73.216.103
Web Server : LiteSpeed
System : Linux in-mum-web906.main-hosting.eu 4.18.0-553.37.1.lve.el8.x86_64 #1 SMP Mon Feb 10 22:45:17 UTC 2025 x86_64
User : u915722082 ( 915722082)
PHP Version : 7.4.33
Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : OFF  |  Python : OFF
Directory (0755) :  /home/u915722082/.nvm/../public_html/invoice/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/u915722082/.nvm/../public_html/invoice/fetch_product_details.php
<?php

header('Content-Type: application/json');
error_reporting(E_ALL);
ini_set('display_errors', 1);

require_once 'db.php'; // Database connection

$response = ["formValues" => [], "paidValues" => [],"bpidValues" => [],  "error" => ""];

if (!isset($_POST["pid"]) || empty($_POST["pid"])) {
    echo json_encode(["error" => "Product ID (pid) is missing."]);
    exit;
}

$pid = (int) $_POST["pid"]; // Ensure it's an integer

// Fetch product details
$query = "SELECT pform, paid, bpid FROM product WHERE pid = ?";
$stmt = $con->prepare($query);

if (!$stmt) {
    echo json_encode(["error" => "Product query preparation failed: " . $con->error]);
    exit;
}

$stmt->bind_param("i", $pid);
$stmt->execute();
$result = $stmt->get_result();

if (!$result) {
    echo json_encode(["error" => "Product query execution failed: " . $stmt->error]);
    exit;
}
if ($row = $result->fetch_assoc()) {
    $formValuesIDs = !empty($row["pform"]) ? explode(",", $row["pform"]) : [];
    $paidIDs = !empty($row["paid"]) ? explode(",", $row["paid"]) : [];
    $bpidIDs = !empty($row["bpid"]) ? explode(",", $row["bpid"]) : [];

    // Fetch form_values from "forms_value" table
    if (!empty($formValuesIDs) && $formValuesIDs[0] !== "") {
        $placeholders = implode(',', array_fill(0, count($formValuesIDs), '?'));
        $query = "SELECT fid, name, measurement FROM forms_value WHERE fid IN ($placeholders)";
        $stmt = $con->prepare($query);

        if (!$stmt) {
            echo json_encode(["error" => "FormValues query preparation failed: " . $con->error]);
            exit;
        }

        $stmt->bind_param(str_repeat("i", count($formValuesIDs)), ...$formValuesIDs);
        $stmt->execute();
        $result = $stmt->get_result();

        if (!$result) {
            echo json_encode(["error" => "FormValues query execution failed: " . $stmt->error]);
            exit;
        }

        while ($row = $result->fetch_assoc()) {
            $response["formValues"][] = [
                "id" => $row["fid"],
                "name" => $row["name"],
                "measurement" => $row["measurement"]
            ];
        }
    }

    if (!empty($paidIDs) && $paidIDs[0] !== "") {
        $placeholders = implode(',', array_fill(0, count($paidIDs), '?'));
        $query = "SELECT paid, name, value, no_of_pack FROM package WHERE paid IN ($placeholders)";
        $stmt = $con->prepare($query);

        if (!$stmt) {
            echo json_encode(["error" => "Paid query preparation failed: " . $con->error]);
            exit;
        }

        $stmt->bind_param(str_repeat("i", count($paidIDs)), ...$paidIDs);
        $stmt->execute();
        $result = $stmt->get_result();

        if (!$result) {
            echo json_encode(["error" => "Paid query execution failed: " . $stmt->error]);
            exit;
        }

        while ($row = $result->fetch_assoc()) {
            $response["paidValues"][] = [
                "id" => $row["paid"],
                "name" => $row["name"],
                "value" => $row["value"],
                "no_of_pack" => $row["no_of_pack"]
            ];
        }
    }
    else {
        // Step 1: Get variation_multi rows for this pid
        $query = "SELECT * FROM variation_multi WHERE pid = ?";
        $stmt = $con->prepare($query);
    
        if (!$stmt) {
            echo json_encode(["error" => "VariationMulti query preparation failed: " . $con->error]);
            exit;
        }
    
        $stmt->bind_param("i", $pid);
        $stmt->execute();
        $variationResult = $stmt->get_result();
    
        if (!$variationResult) {
            echo json_encode(["error" => "VariationMulti query execution failed: " . $stmt->error]);
            exit;
        }
    
        while ($variationRow = $variationResult->fetch_assoc()) {
            $value1 = $variationRow["value1"];
    
            // Step 2: Find matching package by name = value1
            $pkgQuery = "SELECT paid, name, value, no_of_pack FROM package WHERE name = ?";
            $pkgStmt = $con->prepare($pkgQuery);
    
            if (!$pkgStmt) {
                echo json_encode(["error" => "Package query preparation failed: " . $con->error]);
                exit;
            }
    
            $pkgStmt->bind_param("s", $value1);
            $pkgStmt->execute();
            $pkgResult = $pkgStmt->get_result();
    
            if (!$pkgResult) {
                echo json_encode(["error" => "Package query execution failed: " . $pkgStmt->error]);
                exit;
            }
    
            while ($pkgRow = $pkgResult->fetch_assoc()) {
                $response["paidValues"][] = [
                    "id" => $pkgRow["paid"],
                    "name" => $pkgRow["name"],
                    "value" => $pkgRow["value"],
                    "no_of_pack" => $pkgRow["no_of_pack"],
                    "variation_value" => $value1
                ];
            }
        }
    }
    




if (!empty($bpidIDs) && $bpidIDs[0] !== "") {
    $placeholders = implode(',', array_fill(0, count($bpidIDs), '?'));
    $query = "SELECT bpid, name FROM bulkpackage WHERE bpid IN ($placeholders)";
    $stmt = $con->prepare($query);

    if (!$stmt) {
        echo json_encode(["error" => "Bulk Package query preparation failed: " . $con->error]);
        exit;
    }

    $stmt->bind_param(str_repeat("i", count($bpidIDs)), ...$bpidIDs);
    $stmt->execute();
    $result = $stmt->get_result();

    while ($row = $result->fetch_assoc()) {
        $response["bpidValues"][] = [
            "id" => $row["bpid"],
            "name" => $row["name"]
        ];
    }
}
    echo json_encode($response);
} else {
    echo json_encode(["error" => "No product found with the given PID."]);
}

?>

MMCT - 2023