MOON
Server: Apache
System: Linux e2e-78-16.ssdcloudindia.net 3.10.0-1160.45.1.el7.x86_64 #1 SMP Wed Oct 13 17:20:51 UTC 2021 x86_64
User: imensosw (1005)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/imensosw/public_html/imenso.co/matrix/post_data.php
<?php
// assuming file.zip is in the same directory as the executing script.
require_once 'config.php';
require 'vendor/autoload.php';

error_reporting(0);

/*error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);*/

// include('PHPExcel/Classes/PHPExcel/IOFactory.php');

use PhpOffice\PhpSpreadsheet\Spreadsheet;

if(isset($_POST['formData']['rowId']))
{
  $assignment_no = $_POST['formData']['assignment_no'];
  $docId = $_POST['formData']['docId'];
  $rowId = $_POST['formData']['rowId'];
  $title = $_POST['formData']['title'];
  $date = $_POST['formData']['date'];
  $description = $_POST['formData']['description'];

  // $inputFileName = "docs/".$assignment_no."/".$assignment_no.".xls";
    $FileName = "docs/".$assignment_no."/".$assignment_no.".xls";
    if(file_exists($FileName))
    {
        $inputFileName = $FileName;
        $fileType = "Xls";
    }
    else{
        $fileType = "Xlsx";
        $inputFileName = "docs/".$assignment_no."/".$assignment_no.".xlsx";
    }

    /*$inputFileType = PHPExcel_IOFactory::identify($inputFileName);
    $excel2 = PHPExcel_IOFactory::createReader($inputFileType);
    $excel2 = $objPHPExcel = $excel2->load($inputFileName);

    // Empty Sheet
    $excel2->setActiveSheetIndex(0); // Set Worksheet Index
    $sheet = $objPHPExcel->getSheet(0);
    $highestRow = $sheet->getHighestRow();
    $highestColumn = $sheet->getHighestColumn();

    $excel2->getActiveSheet()->SetCellValue('B'.$rowId, $title);
    $excel2->getActiveSheet()->SetCellValue('C'.$rowId, $date);
    $excel2->getActiveSheet()->SetCellValue('D'.$rowId, $description);

    $objWriter = PHPExcel_IOFactory::createWriter($excel2, $inputFileType);*/

    // $reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
    // $spreadsheet = $reader->load($inputFileName);

    $spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($inputFileName);

    $d=$spreadsheet->getSheet(0)->toArray();
    $sheet = $spreadsheet->getActiveSheet();
    // Get the highest row and column numbers referenced in the worksheet
    $highestRow = $sheet->getHighestRow(); // e.g. 10
    $highestColumn = $sheet->getHighestColumn(); // e.g 'F'

    $sheet->getCell('B'.$rowId)->setValue($title);
    $sheet->getCell('C'.$rowId)->setValue($date);
    $sheet->getCell('D'.$rowId)->setValue($description);

    $objWriter = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, $fileType);
    ob_end_clean();

    $sql =  "SELECT assignment_details.* FROM assignment_details INNER JOIN assignments ON assignments.id=assignment_details.assignment_id WHERE assignments.deleted=0  AND assignments.assignment_no= '".$assignment_no."' and assignment_details.doc_id ='".$docId."'";
    $result = $conn->query($sql);
    $row = $result->fetch_assoc() ;
    
    $title = str_replace("'","\'",$title) ;
    $title = str_replace('"','\"',$title) ;
    $updateQuery = "UPDATE assignment_details SET doc_title='".$title."', doc_date='".$date."', doc_description ='".$description."'  WHERE assignment_details.id='".$row['id']."' ";
    $recordUpdate = FALSE ;
    if ($conn->query($updateQuery) === TRUE) 
    {
        $objWriter->save($inputFileName);
        $recordUpdate = TRUE ;
    } 

    if($title=="" && $date=="" && $description=="")
    { 
        echo json_encode(['status'=>"default", "message"=>""]);
    }
    else if( $description!="" && $recordUpdate === TRUE)
    {
        echo json_encode(['status'=>"doubt", "message"=>""]);
    }
    else if(  $recordUpdate === TRUE)
    {
        echo json_encode(['status'=>"done", "message"=>""]); 
    }
 

}
else if(isset($_POST['assignment_status_id']))
{
    $status = "fail";
    $message = "Assignment Submittion Failed! Please try again"; 
    if($_POST['assignment_status_id'] == 2)
    {
        // $inputFileName = "docs/".$_POST['assignment_no']."/".$_POST['assignment_no'].".xls";

        $FileName = "docs/".$_POST['assignment_no']."/".$_POST['assignment_no'].".xls";
        if(file_exists($FileName))
        {
            $inputFileName = $FileName;
            $fileType = "Xls";
        }
        else{
            $fileType = "Xlsx";
            $inputFileName = "docs/".$_POST['assignment_no']."/".$_POST['assignment_no'].".xlsx";
        }

        /*$inputFileType = PHPExcel_IOFactory::identify($inputFileName);
        $excel2 = PHPExcel_IOFactory::createReader($inputFileType);
        $excel2 = $objPHPExcel = $excel2->load($inputFileName);
        // Empty Sheet
        $sheet = $objPHPExcel->getSheet(0);
        $highestRow = $sheet->getHighestRow();
        $highestColumn = $sheet->getHighestColumn();
        $rowData="";*/

        // $reader = new \PhpOffice\PhpSpreadsheet\Reader\Xlsx();
        // $spreadsheet = $reader->load($inputFileName);

        $spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($inputFileName);

        $d=$spreadsheet->getSheet(0)->toArray();
        $sheet = $spreadsheet->getActiveSheet();
        // Get the highest row and column numbers referenced in the worksheet
        $highestRow = $sheet->getHighestRow(); // e.g. 10
        $highestColumn = $sheet->getHighestColumn(); // e.g 'F'
        $rowData = "";
        
        $sql =  "SELECT assignments.id FROM assignments WHERE assignments.deleted=0 AND  assignments.assignment_no= '".$_POST['assignment_no']."'";
        $result = $conn->query($sql);
        $row = $result->fetch_assoc() ;
        $assignmentsId = $row['id'] ;
        
        for ($row = 1; $row <= $highestRow; $row++) 
        {
            $rowData = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row, NULL, TRUE, FALSE);
            // $updateQuery = "UPDATE assignment_details SET doc_title='".$rowData[0][1]."', doc_date='".$rowData[0][2]."', doc_description ='".$rowData[0][3]."'  WHERE assignment_details.assignment_id='".$assignmentsId."' and assignment_details.doc_id='".$rowData[0][0]."' ";
            // $conn->query($updateQuery);

            $doc_title = htmlspecialchars($rowData[0][1], ENT_QUOTES, 'UTF-8');
            // $doc_title =$rowData[0][1];
            $doc_date = $rowData[0][2];
            $doc_description= $rowData[0][3];
            $assignmentsId = $assignmentsId;
            $doc_id= $rowData[0][0];
            $updateQuery = 'UPDATE assignment_details SET 
            doc_title="'.$doc_title.'", 
            doc_date="'.$doc_date.'", 
            doc_description ="'.$doc_description.'"  
            WHERE 
            assignment_details.assignment_id="'.$assignmentsId.'" 
            and 
            assignment_details.doc_id="'.$doc_id.'" ';
            $conn->query($updateQuery);
        }
        
        
        $sql =  "SELECT count(*) as freshCount FROM assignment_details WHERE assignment_id = $assignmentsId and (doc_title = '' AND doc_date = '' AND doc_description = '')";
        $result = $conn->query($sql);
        $row = $result->fetch_assoc() ;
        if( $row['freshCount'] == 0  )
        {
            $conn->query("UPDATE assignments SET assignment_status_id='".$_POST['assignment_status_id']."' , submit_date =  '".date("Y-m-d")."' WHERE assignment_no='".$_POST['assignment_no']."' " ) ;
            $status = "success";
            $message = "done"; 
        }
        else {
           $status ="fail";
           $message ="Please do not leave fields blank.";
        }
    }
    else
    {
        $conn->query("UPDATE assignments SET assignment_status_id='".$_POST['assignment_status_id']."' , submit_date =  '".date("Y-m-d")."' WHERE assignment_no='".$_POST['assignment_no']."' " ) ;
        $status = "success";
        $message = "done"; 
    }

    echo json_encode(['status'=>$status, "message"=>$message]); 
}
else if(isset($_POST['get_detail']))
{
    $assignment_no = $_POST['assignment_no'];
    $docId = $_POST['docId'];
    $sql =  "SELECT assignment_details.* FROM assignment_details INNER JOIN assignments ON assignments.id=assignment_details.assignment_id WHERE  assignments.deleted=0 AND assignments.assignment_no= '".$assignment_no."' and assignment_details.doc_id ='".$docId."'";
    $result = $conn->query($sql);
    $row = mysqli_fetch_assoc($result);
    echo json_encode($row); 
}
else{

   echo json_encode(['status'=>"error", "message"=>"123"]); 

}





?>