Skocz do zawartości
DaFFX

error 500

Polecane posty

Cześć,

 

Przy skrypcie który używa curl występuję u mnie błąd 500, nie za bardzo wiem czym jest to spowodowane więc każda pomoc się przyda;)

<?php
error_reporting(E_ALL);
$heart->register_payment_module("1s1k", "PaymentModule_1s1k");

class PaymentModule_1s1k extends PaymentModule implements IPayment_Sms
{

	const SERVICE_ID = "1s1k";

	/** @var string */
	private $api;

	/** @var string */
	private $sms_code;

	private $rates = array();

	function __construct()
	{
		parent::__construct();

		$this->api = $this->data['api'];
		$this->sms_code = $this->data['sms_text'];

		$this->rates = array(
			'0.65'  => '7136',
			'1.30'  => '7255',
			'1.95'  => '7355',
			'2.60'  => '7455',
			'3.25'  => '7555',
			'3.90'  => '7636',
			'4.55'  => '77464',
			'5.20'  => '78464',
			'5.85'  => '7936',
			'6.50'  => '91055',
			'7.15'  => '91155',
			'9.10'  => '91455',
			'10.40' => '91664',
			'12.35' => '91955',
			'13.00' => '92055',
			'16.25' => '92555'
		);
	}

	public function verify_sms($return_code, $number)
	{
		$content = curl_get_contents(
			'http://www.1shot1kill.pl/api' .
			'?type=sms' .
			'&key=' . urlencode($this->api) .
			'&sms_code=' . urlencode($return_code) .
			'&comment='
		);

		if ($content === false) {
			return IPayment_Sms::NO_CONNECTION;
		}

		$response = json_decode($content, true);
		if (!is_array($response)) {
			return IPayment_Sms::BAD_API;
		}

		$response_number = $this->rates[number_format(floatval($response['amount']), 2)];

		switch ($response['status']) {
			case 'ok':
				if ($response_number == $number) {
					return IPayment_Sms::OK;
				}

				return array(
					'status' => IPayment_Sms::BAD_NUMBER,
					'tariff' => $this->getTariffByNumber($response_number)->getId()
				);

			case 'fail':
				return IPayment_Sms::BAD_CODE;

			case 'error':
				switch ($response['desc']) {
					case 'internal api error':
						return IPayment_Sms::SERVER_ERROR;

					case 'wrong api type':
					case 'wrong api key':
						return IPayment_Sms::BAD_API;
				}

				return array(
					'status' => IPayment_Sms::UNKNOWN,
					'text'   => $response['desc']
				);
		}

		return IPayment_Sms::ERROR;
	}

	public function getSmsCode()
	{
		return $this->sms_code;
	}
}

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

My też nie wiemy. Ale jakbyś podesłał jakieś wycinki z logów błędów serwera www, to coś pewnie dało by się wymyśleć.

  • Upvote 1

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

My też nie wiemy. Ale jakbyś podesłał jakieś wycinki z logów błędów serwera www, to coś pewnie dało by się wymyśleć.

[Sat Mar 05 13:52:40.979664 2016] [:error] [pid 1647] [client 185.61.137.100:61247] PHP Notice:  Undefined variable: heart in /home/xxx/web/sklep.xxx/public_html/includes/verification/1s1k.php on line 3
[Sat Mar 05 13:52:40.979686 2016] [:error] [pid 1647] [client 185.61.137.100:61247] PHP Fatal error:  Call to a member function register_payment_module() on null in /home/xxx/web/sklep.xxx/public_html/includes/verification/1s1k.php on line 3

Tylko pytanie, dlaczego wywala mi error 500 a nie te błędy.

 

Na innym hostingu działało, i troszkę to dziwne :D

 

reverse proxy ma do tego jakieś znaczenie?

Edytowano przez DaFFX (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

To nie ma prawa działać, chyba że jest includowane przez jakiś inny skrypt co jest w stanie sprecyzować czym jest $heart.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

To nie ma prawa działać, chyba że jest includowane przez jakiś inny skrypt co jest w stanie sprecyzować czym jest $heart.

 

 

Napewno ma includ'a, ponieważ ten skrypt działał na innym hostingu a tutaj error 500... To napewno nie przez te błędy. Problem zaczyna się w tym, że curl leci chyba przez reverse proxy zamiast po ip mojego serwera a revers nie puszcza połączeń i nie za bardzo wiem jak to poprawić.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

 

 

Napewno ma includ'a, ponieważ ten skrypt działał na innym hostingu a tutaj error 500... To napewno nie przez te błędy. Problem zaczyna się w tym, że curl leci chyba przez reverse proxy zamiast po ip mojego serwera a revers nie puszcza połączeń i nie za bardzo wiem jak to poprawić.

 

To zatrudnij kogoś kto wie i odpowiednio mu zapłać, bo z tego co tutaj wkleiłeś nie wynika absolutnie nic, a moja ostatnia kryształowa kula rozbiła się pół roku temu.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×