File: /home/imensosw/matrix.imenso.co/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"]);
}
?>