Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- header("Content-Type:application/json");
- $host="localhost";
- $username="root";
- $password="ray13a26b";
- $dbname="lnm";
- //create a Connection
- $conn=mysqli_connect($host,$username,$password,$dbname);
- //check the connection
- if(!$conn)
- {
- die("connection does not established successfully :".mysqli_connect_error());
- }
- //read the json file using php method file_get_contents('filename.json')
- //$jsondata=file_get_contents('mpesa.json');
- ////convert json into php array
- //$data=json_decode($jsondata);
- // $request=file_put_contents('php://input');
- // if (!request)
- // {
- // exit("Invalid input");
- // }else{
- // $data = json_decode($request, true);
- // }
- // $MerchantRequestID = $data->Body->stkCallback->MerchantRequestID;
- // $CheckoutRequestID = $data->Body->stkCallback->CheckoutRequestID;
- // $ResultCode = $data->Body->stkCallback->ResultCode;
- // $ResultDesc = $data->Body->stkCallback->ResultDesc;
- // $Items = $data->Body->stkCallback->CallbackMetadata->Item;
- // $Amount = (int)$Items[0]->Value;
- // $MpesaReceiptNumber = $Items[1]->Value;
- // if(!empty($Items[2]->Value))
- // $Balance = $Items[2]->Value;
- // else
- // $Balance = 0;
- // $TransactionDate = (string)$Items[3]->Value;
- // $PhoneNumber = $Items[4]->Value;
- $dataPOST = trim(file_get_contents('php://input'));
- $obj = json_decode($dataPOST,true);
- if(empty($obj)){return ['message'=>'empty body'];}
- $mydata=$obj['Body']['stkCallback']['CallbackMetadata']['Item'];
- $merchant_id=$obj['Body']['stkCallback']['MerchantRequestID'];
- $request_id=$obj['Body']['stkCallback']['CheckoutRequestID'];
- $ResultCode=$obj['Body']['stkCallback']['ResultCode'];
- if ($ResultCode != 0) {
- // $this->send_sms($request_id);
- return ['message'=>'something went wrong'];
- }else{
- foreach ($mydata as $key => $value) {
- if($value['Name']=="Amount"){
- $amount=$value['Value'];
- }else if($value['Name']=="MpesaReceiptNumber"){
- $MpesaReceiptNumber=$value['Value'];
- }else if($value['Name']=="TransactionDate"){
- $TransactionDate=$value['Value'];
- }else if($value['Name']=="PhoneNumber"){
- $PhoneNumber=$value['Value'];
- }}}
- $sql="insert into transactions
- (merchant_request_id,checkout_request_id,result_code,result_desc,amount,mpesa_receipt_number,transaction_date,phone_number,balance )
- values
- ('$MerchantRequestID','$CheckoutRequestID','$ResultCode','$ResultDesc','$Amount','$MpesaReceiptNumber','$TransactionDate','$PhoneNumber','$Balance')";
- //run the above query
- $result=mysqli_query($conn,$sql);
- if(!$result)
- {
- die("ERROR :". mysqli_error($conn));
- }
- else
- {
- echo "Records successfully inserted";
- }
- //close the connection
- mysqli_close($conn);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement