Нужно обработать данные для UnitPay и отправить по ссылке формата: https:// unitpay.money/pay/PUBLIC-KEY?sum&account&desc&signature
Не получается сгенерировать эту ссылку, ругается на ошибку unexpected T_STRING в строчке:
$url = '[URL='https://unitpay.money/pay/.$public_key.?sum=.$sum.&account=.$account.¤cy=.$currency.&desc=.$desc.&signature=.$sign;']https://unitpay.money/pay/'.$public_key.'?sum='.$sum.'&account='.$account.'¤cy='.$currency.'&desc='.$desc.'&signature='.$sign;[/URL]
В чем косяк?(
Весь код:
<?php
$secretKey = '123';
$publicKey = '123';
$desc = 'Покупка тарифа в Brainarium';
$currency = '643';
$post = (!empty($_POST)) ? true : false;
if($post) {
$name = trim($_POST['name']);
$email = trim($_POST['email']);
$sum = trim($_POST['sum']);
$account = $name." " .$email;
function getFormSignature($account, $currency, $desc, $sum, $secretKey) {
$hashStr = $account.'{up}'.$currency.'{up}'.$desc.'{up}'.$sum.'{up}'.$secretKey; return hash('sha256', $hashStr);
}
$sign = getFormSignature($account, $currency, $desc, $sum, $secret_key);
$url = '[URL='https://unitpay.money/pay/.$public_key.?sum=.$sum.&account=.$account.¤cy=.$currency.&desc=.$desc.&signature=.$sign;']https://unitpay.money/pay/'.$public_key.'?sum='.$sum.'&account='.$account.'¤cy='.$currency.'&desc='.$desc.'&signature='.$sign;[/URL]
header('Location: '.$url);
} else {
echo 'Не заполнены все поля!';
}
?>
Потому что в этой строчке после '[URL=
вы закрываете строку, и затем продолжаете писать текст вне кавычек. Хотя для интерпретатора - это непонятный код, поэтому он и выдаёт ошибку на уровне синтаксиса.
$url = '[URL=
'https://unitpay.money/pay/.$public_key.?sum=.$sum.&account=.$account.¤cy=.$currency.&desc=.$desc.&signature=.$sign;']https://unitpay.money/pay/
'.$public_key.'?sum=
'.$sum.'&account=
'.$account.'¤cy=
'.$currency.'&desc=
'.$desc.'&signature=
'.$sign;[/URL]
Плюс ко всему, вы в конце этой строки кода:
'
, чтобы строку закрыть;
Полагаю, что вы хотели написать следующее:
$url = "[URL='https://unitpay.money/pay/$public_key?sum=$sum&account=$account&cy=$currency&desc=$desc&signature=" . $sign . ";']https://unitpay.money/pay/$public_key?sum=$sum&account=$account&cy=$currency&desc=$desc&signature=" . $sign . ";[/URL]";
И, такое чувство, что вы писали текст в обычном текстовом редакторе (да и судя по символу ¤
, ещё и с телефона)
Лучше пишите код с компьютера в том же Notepad++, или хотя бы скачайте какой-нибудь редактор PHP кода на телефон, чтобы таких очевидных ошибок не допускать и сразу было видно, где Вы не поставили кавычку
Конкатенация строк в PHP это точка, у вас она не стоит, но даже если вы ее добавите это НЕ исправит вам ошибку. Какая у вас строка должна быть? Как я понял у вас должно получиться что-то вроде этого:
$url = "[URL=https://unitpay.money/pay/$public_key?sum=$sum&account=$account¤cy=$currency&desc=$desc&signature=$sign;']https://unitpay.money/pay/'$public_key'?sum='$sum'&account='$account'¤cy='$currency'&desc='$desc'&signature='$sign;[/URL]";
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Нужно, чтобы в input отображалось то, что нужно отредактировать, то есть значение из этой таблицыНе судите, я недавно начал это все изучать
Здраствуйте у меня есть код,я только начал учить взаимодействие php с wordpress и сейчас учу register post typeВсе вроде бы нормально,но есть проблема
Всем привет! Пытаюсь запустить symfony приложение с помощью docker'aСкачал с помощью composer'a api приложение symfony