Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
А чем не устроило запись в лог?
Чего то не получается увидеть ответ от сервера, где не правильно делаю?
Правильно ли направление мыслей:
1 Создал контроллер
2. В роутах прописал Route::post('payment','PaymentController@payment');
3. В контроллере создал такой метод - для получения ответа от ЯМ
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class PaymentController extends Controller
{
public function payment(Request $request)
{
parse_str($request->getContent(), $arr);
$hash = sha1($arr['notification_type'].'&'. $arr['operation_id'] .'&'. $arr['amount'] .'&'. $arr['currency'] .'&'.
$arr['datetime'] .'&'. $arr['sender'] .'&'. $arr['codepro'] .'&'. 'UmUGoYENzynxxALGuehgN0EX' .'&'. $arr['label']);
if($arr['sha1_hash'] != $hash or $arr['codepro'] === true or $arr['unaccepted'] ===true)
{
flash()->overlay('Payment error', 'Payment');
return redirect('user');
}
$email = $arr['email'];
$message = $arr['datetime'] . 'Платеж получен' . $arr['amount'] . $arr['email'];
Log::info($message);
return redirect('user');
}
}
В настройках ЯМ все прописал, тестовое сообщение уходит на нужный адрес.
Вы для чего используете этот метод? Если для пуша, то я не совсем понимаю что вы делаете в вашем коде.
Да, тут подразумевалось разобрать ответ после успешной оплаты. Пока хотел записать данные в файл, но будет запись в БД.
Смотрите в сторону push-настроек на стороне платежных систем. С вашей стороны нужно подготовить урл куда будет стучаться платежка. Под каждую систему свой урл. И сразу подготовьте консольную команду для ручной проверки платежа по его идентификатору. Из опыта скажу, будете пользоваться чуть чаще чем всегда). Урлы должны быть закрыты за https.
Правильно ли направление мыслей:
1 Создал контроллер
2. В роутах прписал Route::post('payment','PaymentController@payment');
3. В кононтролере содал такой метод
public function payment(Request $request)
{
parse_str($request->getContent(), $arr);
$hash = sha1($arr['notification_type'].'&'. $arr['operation_id'] .'&'. $arr['amount'] .'&'. $arr['currency'] .'&'.
$arr['datetime'] .'&'. $arr['sender'] .'&'. $arr['codepro'] .'&'. 'UmUGoYENzynxxALGuehgN0EX' .'&'. $arr['label']);
if($arr['sha1_hash'] != $hash or $arr['codepro'] === true or $arr['unaccepted'] ===true)
{
flash()->overlay('Payment error', 'Payment');
return redirect('user');
}
$email = $arr['email'];
file_put_contents('files/history.php', $arr['datetime'] . 'Платеж получен' . $arr['amount'] . $arr['email'] . PHP_EOL, FILE_APPEND);
flash()->overlay('Payment OK ' . $email, 'Payment');
return redirect('user');
}
4. НА странице настроек ЯД указал урл http://site.io/payment
Уже разобрался, форму создал платеж проходит, теперь думаю, как сделать чтобы при удачной оплате в БД заносился срок подписки.
Процесс я понимаю, документацию изучил, пока не совсем понимаю его реализацию во фреймворке, было бы неплохо если бы помогли с примером.
Доброго всем времени суток. Научите новичка правильно прикручивать платежные системы на сайт. Интересуют платежные системы пространства СНГ типа Yandex.Money, QIWI,LiqPAY. Буду очень благодарен за любой пинок в нужную сторону.
Вопрос закрыт всем спасибо разобрался.
Всем привет, помогите разобраться в чем проблема. Делаю post запрос в laravel с софта, в функции пытаюсь его обработать и вернуть данные.
public function response(Request $request)
{
parse_str(base64_decode(file_get_contents('php://input')), $arr );
$email = $arr['email'];
$account = $arr['account'];
// $users = App\User::all(); - с этой строкой ничего не возвращает, без нее работает.
return $email;
}
Может изначально не правильно сформулировал. Нужно вывести в модельное окно сообщение об ошибке , если юзер ввел несуществующие емаил или пароль.
Это понятно. не понятно как в контроллере LoginController перехватить ошибки неверного ввода мыла или пароля.Код ниже не срабатывает.
protected function redirectTo()
{
if ($validator->fails()) {
flash()->overlay('Login or password incorrect', 'Welcome');
$this->redirectTo = '/';
return $this->redirectTo;
}
$this->redirectTo = '/';
return $this->redirectTo;
}
Всем привет. Сделал регистрацию на сайте через модальное окно, теперь хочу подключить flash для вывода ошибок при регистрации и авторизации. Подскажите как правильно это сделать. Через фасад пока ничего не получается. Заранее спасибо.
Доброго времени суток. господа помогите разобраться. Создал личный кабинет пользователя куда он может попасть после регистрации, там есть форма где отображаются все его данные, поля созданы таким образом что их можно редактировать. Поясните или ткните где можно посмотреть, как сделать чтобы при нажатии на кнопку сохранялись изменения в БД. Заранее всем спасибо.
Все доброго времени. Помогите разобраться новичку. Нужно простое разграничение ролей на зарегистрированных пользователей и админов. В БД users создал дополнительное поле role по умолчанию будет 0 - это юзер. Как реализовать, чтобы после авторизации через пункт меню профиль юзеры попадали в свой кабинет, а админы в свой. Заранее всем спасибо. Сильно не пинайте, делаю первые шаги в веб разработках.