lno 35 exit $co_gstin, $co_state_code";exit; $curl_3 = curl_init(); if($debug=='y'){ $f = tmpfile();//for log curl_setopt($curl_3, CURLOPT_VERBOSE, 1);//for log curl_setopt($curl_3, CURLOPT_STDERR, $f);//for log curl_setopt($curl_3, CURLOPT_HEADER, 1);//for log curl_setopt($curl_3, CURLINFO_HEADER_OUT, true);//for log } // $xconnector="l7xxba7aa16e968646b992298b377e955e7c:20180519134451:27GSPMH2101G1Z2"; curl_setopt_array($curl_3, array( CURLOPT_URL => ''.$gsp_base_url.'/einvoice/v1.03/invoice', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_POSTFIELDS =>'{ "action": "GENERATEIRN", "data": { "version": "1.01", "tranDtls": { "taxSch": "GST", "supTyp": "'.$sup_type.'", "regRev": "N", "igstOnIntra":"N" }, "docDtls": {' .$docDtls. '}, "sellerDtls": {' .$sellerDtls. '}, "buyerDtls": { '.$buyerDtls.' }, "valDtls": { '.$valDtls.' }, "itemList": ['.$itemList.'] } }', CURLOPT_HTTPHEADER => array( 'Content-Type: application/json', 'gstin: '.$co_gstin.'', 'Accept: application/json', 'action: GENERATEIRN', 'X-Connector-Auth-Token: '.$xconnector.'', 'Authorization: Bearer '.$api_access_token.''), )); if($debug=='y'){ curl_setopt($curl_3, CURLOPT_HEADER, 1);//for log curl_setopt($curl_3, CURLINFO_HEADER_OUT, true); //for log //// Getting your debug info: // $data = curl_exec($ch); // var_dump($data); // var_dump(curl_getinfo($ch)); } // exit("exti ".$api_access_token); // 'X-Connector-Auth-Token: l7xxba7aa16e968646b992298b377e955e7c:20180519134451:29AFQPB8708K000', // "itemList": ['.$itemList1.'] // echo "here 100".$responJson_3."exitng
";exit; // echo "Contents:
$filecontents
"; $response_3 = curl_exec($curl_3); if($debug=='y'){ var_dump($response_3);//for log var_dump(curl_getinfo($curl_3));//for log fseek($f, 0);//for log echo fread($f, 1024*1024); # output up to 1024 KB cURL verbose log//for log fclose($f);//for log echo "
";//for log } // echo "$response_3"; curl_close($curl_3); $responJson_3=json_decode($response_3); // var_dump($response_3); // var_dump($responJson_3); // echo "Access token : $api_access_token
"; // echo "
Time :".date('d-M-Y H:i:s')."
"; // echo "
$filecontents
"; // echo "$response_3"; // echo "
Time :".date('d-M-Y H:i:s')."
"; // "RJ status ".$responJson_3->status; $sno=0; if($responJson_3->status=="0"){ $e_cnt=0; $e_siz=sizeof($responJson_3->error); while($e_cnt<$e_siz){ $sno++; // echo "hrerdd"; $msg.= "Error $sno :- ". $responJson_3->error[$e_cnt]->errorMsg."
"; //echo "$msg"; if($responJson_3->error[$e_cnt]->errorMsg=="Duplicate IRN"){ $Irn=$responJson_3->info[0]->Desc->Irn; //$inv_no_db=sqlsrv_query($conn,"SELECT [inv_no] FROM [irn_data] WHERE [irn]='$Irn'");//->fetch_object()->inv_no; //$inv_no_db=sqlsrv_query($conn,"SELECT [inv_no] FROM [irn_data] WHERE [irn]='$Irn'");//->fetch_object()->inv_no; $msg.= "    IRN:- ".$Irn."
"; //echo "$msg"; // echo "    Generated :- ". $responJson_3->info[0]->Desc->AckNo."/". $responJson_3->info[0]->Desc->AckDt."
"; $msg.= "    Generated :- ". $responJson_3->info[0]->Desc->AckDt."
"; $msg.= "    Invoice No :- ". $inv_no_db."
"; $msg.= "    Invoice date :- ". $inv_date."
"; //echo "$msg"; //log $inv_date_db=substr($inv_date,6,4)."-".substr($inv_date,3,2)."-".substr($inv_date,0,2); $q149="INSERT INTO [irn_log] ([irn_id],[irn_type],[irn_dtt],[irn],[irn_msg],[inv_id],[co_id],[inv_date],[user_id],[irnl_dtt]) VALUES ('0','ei_generate','". $responJson_3->info[0]->Desc->AckDt."','". $responJson_3->info[0]->Desc->Irn."','".$responJson_3->error[$e_cnt]->errorMsg."','$inv_id','".$_SESSION["co_id"]."','$inv_date_db','".$_SESSION["user_id"]."','".date('Y-m-d H:i:s')."')"; $ins_log=sqlsrv_query($conn,$q149); // if($_SESSION['lvl']>2000){ // $msg.="
Update IRN in DB"; // } if(!$ins_log){echo "exkt g 172 $q149";exit;} } if($responJson_3->error[$e_cnt]->errorMsg=="Invalid Token"){ // "Token Error: ".print_r($responJson_3)."
"; //invalidate api_exp $q86="UPDATE TOP (1) [api_auth] SET [api_exp]='0' WHERE [co_gstin]='$co_gstin' ORDER BY [api_id] DESC "; $upd_api_exp=sqlsrv_query($conn, $q86); if(!$upd_api_exp){ $alert_type="simple"; $msg="Err ApiAuth
$q86
"; }else{ $alert_type="warning"; $msg="Invalid Token Error (Code 85): Try again Generating."; $msg.="
"; } } if($responJson_3->error[$e_cnt]->errorMsg=="Invalid Data"){ // "DATA Error: ".print_r($responJson_3)."
"; $msg.="Invalid Data Error (Line192).
Try again Generating"; $msg.="
".var_dump($responJson_3); // $msg.="******Details******
"; $msg.="=====".$response_3."=====
"; // $msg.="=====".$valDtls."=====
"; // $msg.="=====".$itemList."=====
"; // $msg.="******EndOfDetails******
"; //echo $msg."
"; append_file($filename,"*****Details******\n".$response_3."\n*****!Details*****\n"); $msg.="
Download Error Details"; } $e_cnt++; } //echo $response_3."
".$valDtls."
".$itemList; if($debug=='y'){ //header("Location:landing_page.php?m=".urlencode($msg)."&fn=".urlencode($filename)."&at=".$alert_type); } }else{ $Irn=$responJson_3->data->Irn; $SignedQRCode=$responJson_3->data->SignedQRCode; $SignedInvoice=$responJson_3->data->SignedInvoice; $AckNo=$responJson_3->data->AckNo; $AckDt=$responJson_3->data->AckDt; // echo " // // // // // // // "; include('php_qr_code/library/php_qr_code/qrlib.php'); // Include a library for PHP QR code //its a location where generated QR code can be stored. $qr_code_file_path = dirname(__FILE__).DIRECTORY_SEPARATOR.'qr_image'.DIRECTORY_SEPARATOR; $set_qr_code_path = 'qr_image/'; // If directory is not created, the create a new directory if(!file_exists($qr_code_file_path)){ mkdir($qr_code_file_path); } //Set a file name of each generated QR code $filename = $qr_code_file_path.$inv_id.'.png'; $errorCorrectionLevel = "L"; $matrixPointSize = 2; $frm_link = $SignedQRCode; QRcode::png($frm_link, $filename, $errorCorrectionLevel, $matrixPointSize, 2); // $dataString = file_get_contents($set_qr_code_path.basename($filename));//id21 // $arrData = unpack("H*hex", $dataString);//id21 // $qr_img_data = "0x".$arrData['hex'];//id21 /* // //id22 function prepareImageDBString($filepath) { $out = 'null'; $handle = @fopen($filepath, 'rb'); if ($handle) { $content = @fread($handle, filesize($filepath)); $content = bin2hex($content); @fclose($handle); $out = "0x".$content; } return $out; } $qr_img_data = prepareImageDBString($set_qr_code_path.basename($filename)); // //!id22 */ //$imagedata = file_get_contents($set_qr_code_path.basename($filename)); // $base64img = base64_encode($imagedata); //echo "
$base64img
"; // Format the image SRC: data:{mime};base64,{data}; // $src = "data:png;base64,".$base64img; // echo "Converted "; // Echo out a sample image // echo ''; //$ins_q161="INSERT INTO [irn_data] ([irn],[irn_ack_no],[irn_ack_dtt],[irn_qr_data],[irn_sign_inv],[co_id],[inv_id],[inv_no],[inv_date],[user_id]) VALUES //('$Irn','$AckNo','$AckDt','$SignedQRCode','$SignedInvoice','".$_SESSION['co_id']."','$inv_id','".$inv_no_db."','$inv_date_db','".$_SESSION['user_id']."')"; $ins_q161="INSERT INTO [irn_data] ([irn],[irn_ack_no],[irn_ack_dtt],[irn_qr_data],[irn_sign_inv],[co_id],[inv_id],[inv_no],[inv_date],[user_id],[qr_img_data]) VALUES ('$Irn','$AckNo','$AckDt','$SignedQRCode','$SignedInvoice','".$_SESSION['co_id']."','$inv_id','".$inv_no_db."','$inv_date_db','".$_SESSION['user_id']."','$qr_img_data')"; //exit($ins_q161); $res161=sqlsrv_query($conn,$ins_q161); //append_file("qry.sql",$ins_q161."\n");// if you want to log the insert qry //unlink($set_qr_code_path.basename($filename));//if you want to delete the temp QR code genereted if(!$res161){ echo "Error in saving IRN data. ".$mysqli->error."
$ins_q161";exit; }else{ // $irn_id=$mysqli->insert_id; //log $q166="INSERT INTO [irn_log]([irn_type],[irn_dtt],[irn_id],[irn_msg],[inv_id],[co_id],[inv_date],[user_id],[irnl_dtt]) VALUES ('ei_generate','$AckDt','$Irn','success','$inv_id','".$_SESSION["co_id"]."','$inv_date','".$_SESSION["user_id"]."','".date("Y-m-d H:i:s")."')"; $ins_log=sqlsrv_query($conn,$q166); $msg="eInvoice Created successfully with IRN
 $Irn
"; //header("Location:landing_page.php?m=".urlencode($msg)); //if($debug=='y'){ // header("Location:landing_page.php?m=".urlencode($msg)); //} } } if($debug=='y'){ echo "$response_3"; }else{ echo $msg; } // echo "$docDtls"; // echo "
[$itemList]"; // echo "$sellerDtls
$sellerDtls1"; ?>
IRN$Irn
Ack No$AckNo
Ack Date$AckDt
QRCode$SignedQRCode
QRCode Data$SignedQRCode
Signed Inv$SignedInvoice