У меня есть приложение, которое содержит много папок/подпапок/файлов, и я не могу заставить Braintree работать правильно. Есть что-то, чего я просто здесь не хватает? Скажем, мое имя сайта DIR.API-интерфейс Braintree, не работающий в PHP-приложении
Все распаковка файлы из папки Брэйнтри находятся в DIR/braintree_payments
Тогда мой файл transaction.php в DIR/шаблоны/содержание/Список
Всех этикеток для формы в DIR/шаблоны/содержание/реклама/confirm_booking.tpl.php
confirm_booking.tpl.php
<h1>Braintree Credit Card Transaction Form</h1>
<div style="position:relative;">
<form action="transaction.php" method="POST" id="braintree-payment-form">
<p>
<label>Card Number</label>
<input type="text" size="20" autocomplete="off" data-encrypted-name="number" />
</p>
<p>
<label>CVV</label>
<input type="text" size="4" autocomplete="off" data-encrypted-name="cvv" />
</p>
<p>
<label>Expiration (MM/YYYY)</label>
<input type="text" size="2" name="month" />/<input type="text" size="4" name="year" />
</p>
<input type="submit" id="submit" />
</form>
</div>
<script type="text/javascript" src="https://js.braintreegateway.com/v1/braintree.js"></script>
<script type="text/javascript">
var braintree = Braintree.create("awefawef2oIaXiawefawefawefoP1jJ3LNuLchxfeawfawetq34tq34tq34tBtfTk6KnM0Bk3TkofNMM2CG/1ktaBDa+BEbteZjF05e5Jjfwefawfawe4t34434CVxaXNAbgZEn+ECWiZ2rynxtme5goMAhYAS+blBaVlL9+affawef aw/NLhqKmwQL7zuK3GBGiOp3ht9rL3AI1O84o1WpjVeqt8Xgg5MQe4jRTGJAfR3Rv25KPuwRaTqrevyVyRkPekcCIp1HROoZGelQyaSsPzhA0/FApbRu0Vpcx6kUwIDAQAB");
braintree.onSubmitEncryptForm('braintree-payment-form');
</script>
transaction.php
<?PHP
require_once 'braintree_payments/lib/Braintree.php';
Braintree_Configuration::environment('sandbox');
Braintree_Configuration::merchantId('389yhf9gf82gf3');
Braintree_Configuration::publicKey('r3h89h39h833');
Braintree_Configuration::privateKey('my_private_api_key');
$result = Braintree_Transaction::sale(array(
"amount" => "1000.00",
"creditCard" => array(
"number" => $_POST["number"],
"cvv" => $_POST["cvv"],
"expirationMonth" => $_POST["month"],
"expirationYear" => $_POST["year"]
),
"options" => array(
"submitForSettlement" => true
)
));
if ($result->success) {
echo("Success! Transaction ID: " . $result->transaction->id);
} else if ($result->transaction) {
echo("Error: " . $result->message);
echo("<br/>");
echo("Code: " . $result->transaction->processorResponseCode);
} else {
echo("Validation errors:<br/>");
foreach (($result->errors->deepAll()) as $error) {
echo("- " . $error->message . "<br/>");
}
}
?>
Также страница, содержащая html файла confirm_booking.tpl.php, связана с DIR/modules/listing/confirm_booking.php. Итак, модули/листинг/confirm_booking.php находятся в URL-адресе – pmanning
Эй, @pmanning, вы пытались добавить '../' в свой 'require_once'? 'require_once '../ braintree_payments/lib/Braintree.php';' Если это не исправить, будьте более конкретными, то «не работает правильно». Также я отредактировал ваше сообщение, чтобы удалить ваш закрытый ключ. Несмотря на то, что это всего лишь учетная запись в виде песочницы, вы должны сохранить это частное. – agf
Да, я пробовал, что не повезло. и спасибо за редактирование, но я просто нацарапал в каком-то тексте, это не настоящие ключи. Он перенаправляется на мою домашнюю страницу, а затем ничего не отображается в моей учетной записи sandbox. – pmanning