• Никакой политики на форуме. Иначе - бан!
  • Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Как подставить наименование и цену?

sergiocharm

Опытный
Ребята, помогите уразуметь, мне надо вместо 7990 подставить цену товара, а вместо привет поставить название товара

Код:
  //формируем заказ
    $application = array(
        'timestamp'  => time(),
        'requestId' => time(),
        "orderItems" => array(
            array(
                'price' => array(
                    'value' => 7990,
                    'currency' => 'RUB'
                ),
                'category' => 'phones',
                'title' => 'привет'
            )
        ),
        "requestedAmount" => array(
            'value' => 7990,
            'currency' => 'RUB'
        ),
        "applicationFields" => array(
            "requestedTerm" => 10
        ),
        "sellerUserId" => "a06m00000055hZOAAY",
    );

    //кодируем заказ в json формат и формируем подпись
    $data = json_encode($application);
    $signature = getSignature($data, $private_key, $public_key);

    if (is_null($signature)) {
        return null;
    }
 

sergiocharm

Опытный
Хэлп Ми плиз как мне сделать так чтобы из карточки цена и наименование товара подставлялись в массив?
Код:
    //формируем заказ
    $application = array(
        'timestamp'  => time(),
        'requestId' => time(),
        "orderItems" => array(
            array(
                'price' => array(
                    'value' => 7990,
                    'currency' => 'RUB'
                ),
                'category' => 'phones',
                'title' => 'топас',
            )
        ),
        "requestedAmount" => array(
            'value' => 7990,
            'currency' => 'RUB'
        ),
        "applicationFields" => array(
            "requestedTerm" => 10
        ),
        "sellerUserId" => "a06m00000055hZOAAY",
    );
 

artemkomarov

Специалист
Местный
То что вы делаете не работает с бухты барахты по советам на форуме. Вам нужен полноценный процессинговый плагин с тестами логами и тд. Наймите специалиста в этой области для этой работы.
 

sergiocharm

Опытный
То что вы делаете не работает с бухты барахты по советам на форуме. Вам нужен полноценный процессинговый плагин с тестами логами и тд. Наймите специалиста в этой области для этой работы.
нет нет, здесь все просто, надо взять данные со страницы и отправить банку. Т.е. тут не обязательно логирование.
Это работает .Вот полный код тестового примера.
Сейчас я его добавил в файл price.php и там пытаюсь подставить наименование и цену в массив, но не получается.
Код:
<?php

function create()
{
    //функция формирования подписи
    function getSignature($data, $private_key, $public_key) {

        assert(is_string($data));
        assert(is_string($private_key));
        assert(is_string($public_key));

        openssl_sign($data, $signature, $private_key, OPENSSL_ALGO_SHA256);

        if (openssl_verify( $data, $signature ,$public_key, "sha256WithRSAEncryption") == 1) {
            return bin2hex($signature);
        } else {
            return null;
        }
    }

    //берем данные для подписи из соседних файлов
    $private_key = file_get_contents('private_key.pem');
    $public_key = file_get_contents('public_key.pem');

    //формируем заказ
    $application = array(
        'timestamp'  => time(),
        'requestId' => time(),
        "orderItems" => array(
            array(
                'price' => array(
                    'value' => 7990,
                    'currency' => 'RUB'
                ),
                'category' => 'phones',
                'title' => 'apple iphone',
            )
        ),
        "requestedAmount" => array(
            'value' => 7990,
            'currency' => 'RUB'
        ),
        "applicationFields" => array(
            "requestedTerm" => 10
        ),
        "sellerUserId" => "a06m00000055hZOAAY",
    );

    //кодируем заказ в json формат и формируем подпись
    $data = json_encode($application);
    $signature = getSignature($data, $private_key, $public_key);

    if (is_null($signature)) {
        return null;
    }

    //отправляем POST запрос на сервер Тинькофф
    $ch = curl_init('https://loans-qa.tcsbank.ru/api/partners/v1/kvk/create');
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        'Content-Type: application/json',
        'X-Api-Key: kvk_store',
        'Cache-Control: no-cache',
        'X-Api-Signature: '.$signature,
    ));

    $response = curl_exec($ch); //получаем ответ от сервера в json формате

    if ($error = curl_error($ch)) {
      echo $error;
    }

    curl_close($ch);

    return $response;
}

$response = create();
$decoded_responce = json_decode($response, true); //декодируем ответ из json в массив
$url = $decoded_responce['url']; //достаем из массива нужный url
echo "<a href=".$url."><img src='https://www.kupivkredit.ru/images/insales/btn.png' alt='КупиВкредит'
          ></a>"; //переходим по этому url

?>
 

sergiocharm

Опытный
неужели все гуру woo не смогут мне помочь просто подставить наименование и цену в массив?
 
Сверху Снизу