Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Re: Laravel 6/7/8/9/10 » не могу установить Homestead » 08.12.2019 11:08:55

он у меня и так уже в PATH есть

PS C:\laragon\www\laravel> $env:path -split ';'
C:\Program Files (x86)\Common Files\Intel\Shared Files\cpp\bin\Intel64
C:\WINDOWS\system32
C:\WINDOWS
C:\WINDOWS\System32\Wbem
C:\WINDOWS\System32\WindowsPowerShell\v1.0\
C:\WINDOWS\System32\OpenSSH\
C:\HashiCorp\Vagrant\bin
C:\Users\Anastasia\AppData\Local\Microsoft\WindowsApps

а если ввожу в CMD полный путь C:\HashiCorp\Vagrant\bin\vagrant
то получаю Access is denied.
Но на компе всего один пользователь и он АДМИН

#2 Re: Laravel 6/7/8/9/10 » не могу установить Homestead » 07.12.2019 17:32:46

Я уже чуток поковырялся. Похоже какая-то проблема с виндой.
Только не знаю какая.
Короче я попробовал на другом ноуте и всё работает.

Хоть бы они какие-то требования к настройкам системы написали. А то непонятно где искать проблему.

#3 Laravel 6/7/8/9/10 » не могу установить Homestead » 07.12.2019 09:16:56

schel4ok
Ответов: 4

Всем привет,

не получается установить Homestead. Даже видео смотрел, где чувак просто пошагово
1) установил Virtualbox
2) установил Vagrant
3) создал папку C:\Users\User\Documents\laravel-dev\homestead
4) распаковал туда архив проекта https://github.com/laravel/homestead
5) рядом создал папку для проектов C:\Users\User\Documents\laravel-dev\projects
6) в папке homestead запустил init.bat
7) в файле Homestead.yaml отредактировал строки

ip: "192.168.20.10"
folders:
    - map: C:\Users\User\Documents\laravel-dev\projects\first
      to: /home/vagrant/first
sites:
    - map: first.test
      to: /home/vagrant/first/public

8) в файле C:\WINDOWS\System32\drivers\etc\hosts добавил вниз строку 192.168.20.10    first.test
9) в cmd проверил ping first.test - работает
10) и в конце я запускаю powershell в папке homestead и вижу такую ошибку

PS C:\Users\User\Documents\laravel-dev\homestead> vagrant up
vagrant : Имя "vagrant" не распознано как имя командлета, функции
, файла сценария или выполняемой программы. Проверьте правильност
ь написания имени, а также наличие и правильность пути, после чег
о повторите попытку.
строка:1 знак:1
+ vagrant up
+ ~~~~~~~
    + CategoryInfo          : ObjectNotFound: (vagrant:String) [
   ], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

При этом Virtualbox установлен. Можно открыть, запустить виртуальную машину. Vagrant в списке приложений в панели управления установлен.
Всё вроде нормально.

что за фигня?

#4 Re: Laravel 5.x » csrf_field() в компоненте vue » 15.12.2016 21:17:18

Допустим. Но как мне вставить этот csrf в коде vue компонента?
Я нашел в файле bootstrap.js переменную MyApp.csrfToken
Только как ее передать в компонента тоже пока не разобрался

#5 Re: Laravel 5.x » csrf_field() в компоненте vue » 13.12.2016 23:38:44

еще раз
есть такая форма в компоненте vue и в ней значение {!! csrf_field() !!} выводится как есть - то есть прямо текст {!! csrf_field() !!} выводится на странице.

assets\js\components\callback.vue

<template>

<div class="callback">
<a href="mailto:info@mail.ru">info@mail.ru</a><br>
<a class="btn btn-primary btn-large" href="#callback" title="Обратный звонок" data-toggle="modal" data-target="#callback">
<i class="fa fa-phone"> </i> {{ name }}</a></p>


<div class="modal fade" id="callback" tabindex="-1" role="dialog" v-show="show" transition="modal" >
<div class="modal-dialog">

<form v-on:submit.prevent="submitForm" name="callback" method="POST" action="/" role="form" class="form-horizontal" enctype="multipart/form-data">
{!! csrf_field() !!}

<div class="modal-content">
<div class="modal-header">
...
</div>

<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">Закрыть</button>
<button type="submit" class="btn btn-primary pull-right" v-on:click="sendMessage()">Отправить</button>
</div>

</div>
</form>

</div>
</div>

</div>

</template>

<script>

    export default {
        data () {
            return {
                 ...
            }
        },
        methods: {
            ...
        },
        mounted() {
            console.log('Callback button ready.')
        }
    }
</script>

#6 Re: Laravel 5.x » csrf_field() в компоненте vue » 13.12.2016 23:19:48

как это вывести в шаблоне компонента vue?

#7 Laravel 5.x » csrf_field() в компоненте vue » 12.12.2016 23:57:16

schel4ok
Ответов: 5

Я пытаюсь сделать форму обратной связи в компоненте  vue.
При этом внутри компонента переменная {!! csrf_field() !!} не опознается (выводится на странице прям так).

Что делать?

#8 Laravel 5.x » нет доступа к app.js в браузере » 16.10.2016 19:00:33

schel4ok
Ответов: 0

Я использую Laravel 5.3, в который теперь по умолчанию включен vuejs.

Естественно есть ошибки в консоли. Но раньше, когда я пользовался Laravel 5.2 + jQuery, при нажатии на каждую ошибку открывался код, вызвавший ошибку, а сейчас выводится сообщение

Access forbidden!
You don't have permission to access the requested object.
It is either read-protected or not readable by the server.

То есть например есть ошибка в консоли   https://yadi.sk/i/cbVezCuvwwuug

[Vue warn]: Duplicate value found in v-for="furnitura in furnitura": "4". Use track-by="$index" if you are expecting duplicate values.app-b9a66aba7d.js%20line%20149%20%3E%20eval:1137:9

Если справа нажать на ссылку app-b9a66ab...:1137:9

То откроется новая вкладка с адресом view-source:http://blog2/build/js/app-b9a66aba7d.js%20line%20149%20%3E%20eval
и ошибкой Access forbidden!
https://yadi.sk/i/836AJOCLwww2K

При этом если попробовать открыть http://blog2/build/js/app-b9a66aba7d.js, то проблем нету. Но читать этот файл вообще невозможно.

#9 Re: Laravel 5.x » Laravel 5.3 TokenMismatchException » 11.10.2016 08:15:14

А что онтокен при этом не будет проверять?

#11 Re: Laravel 5.x » Laravel 5.3 TokenMismatchException » 10.10.2016 14:23:00

Это точно не поможет, т.к.  это я добавил уже после того как перестало работать, потому что нашёл это в каком-то буржуйском блоге

#12 Laravel 5.x » Laravel 5.3 TokenMismatchException » 10.10.2016 00:04:38

schel4ok
Ответов: 7

никак не могу решить проблему отправки писем в Laravel 5.3
та же проблема была в 5.1, решения не нашел - поставил 5.3
первое время все работало, но потом я опять не заметил после чего стала появляться эта ошибка токена
вроде ничего, касающегося формы не трогал

routes\web.php

Route::get('/admin', 		['as' => 'admin.index', 			'uses' => 'AdminController@index']);
Route::group(['middleware' => ['web']], function () {
	Route::get('/',  				['as' => 'home', 			'uses' => 'HomeController@index']);
	Route::post('/', 				['as' => 'callback', 		'uses' => 'PostController@callback']);
});

PostController.php

    public function callback(Request $request) 
    {

        $this->validate($request, [
            'name' => 'required|min:3',
            'tel' => 'required|min:10'
        ]);

        if ($request->ajax()) return;
        return 'publish';
    }

resources\assets\js\app.js

Vue.component('callback', require('./components/callback.vue'));

const app = new Vue({
    el: 'body',

    data: {
        mymessage: "hello world!",
        formInputs: {},
        formErrors: {}
    },

    methods: {
		submitForm: function(e) {
		  var form = e.target;
		  var action = form.action;
		  var csrfToken = form.querySelector('input[name="_token"]').value;

		  this.$http.post(action, this.formInputs, {
		    headers: {
		        'X-CSRF-TOKEN': csrfToken
		    }
		  })
		  .then(function() {
		        form.submit();
		  })
		  .catch(function (data, status, request) {
		    var errors = data.data;
		    this.formErrors = errors;
		  });
		}

    },

});

resources\assets\js\components\callback.vue

<template>

    <div class="callback">
        <a href="/" class="root"> </a>
        <p>8 (495) 790 84 15<br>
        <a href="mailto:sales@steklo-group.ru">sales@steklo-group.ru</a><br>
        <a class="btn btn-primary btn-large" href="#callback" title="Обратный звонок" data-toggle="modal" data-target="#callback">
        <i class="fa fa-phone"> </i> Обратный звонок</a></p>
    </div>

</template>


<script>
    export default {
        ready() {
            console.log('Callback ready.')
        }
    }
</script>

resources\views\layouts\public.blade.php

<!DOCTYPE html>
<html lang="en">
    <head>

        <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <meta name="csrf-token" content="{{ csrf_token() }}">

        <link rel="stylesheet" href="{{ elixir("css/app.css") }}">
        <script>
            window.Laravel = <?php echo json_encode([
                'csrfToken' => csrf_token(),
            ]); ?>
        </script>
</head>

    <body>
        <div class="flex-center position-ref full-height panel panel-default">

            <header class="layout-header panel-heading">
                @include('modules.topmenu')
                <callback></callback>
                @include('modules.mainmenu')
            </header>
            {!! Breadcrumbs::renderIfExists() !!}
            @if(Session::has('message'))
                <div class="alert alert-info">{{Session::get('message')}}</div>
            @endif
            @if(Session::has('errors'))
                <div class="alert alert-info">@foreach($errors->all() as $error){{ $error }}<br>@endforeach
            </div>
            @endif
            <content id="content" class="panel-body content" style="clear:both;">@yield('content')</content>
            <div class="clearfix"></div>
            <footer id="bottommodules" class="panel-footer">@yield('bottommodules')</footer>
        </div>
        @include('modules.totop')
        @include('modules.callback')
        <script src="{{ elixir("js/app.js") }}"></script>
    </body>
</html>

resources\views\modules\callback.blade.php

<div class="modal fade" id="callback" tabindex="-1" role="dialog" aria-labelledby="callback" aria-hidden="true">
  <div class="modal-dialog">

    <form @submit.prevent="submitForm" name="callback" method="POST" action="/" role="form" class="form-horizontal" enctype="multipart/form-data">
    {{ csrf_field() }}

    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <h4 class="modal-title" id="CallbackModalLabel"><i class="fa fa-envelope-o text-primary"></i>  Отправить письмо / Попросить перезвонить</h4>
      </div>
      <div class="modal-body">

    	 <div class="text-primary">* обязательное поле</div>

          <div class="form-group">
            <label class="control-label" for="name">Ваше имя *</label>
            <input id="name" name="name" class="form-control" v-model="formInputs.name" type="text" required>
            <span v-if="formErrors['name']" class="error">@{{ formErrors['name'] }}</span>
          </div>

          <div class="form-group">
            <label class="control-label" for="phone">Номер телефона *</label>
            <input id="phone" name="tel" class="form-control" v-model="formInputs.tel"  required>
            <span v-if="formErrors['tel']" class="error">@{{ formErrors['name'] }}</span>
          </div>

          <div class="form-group">
            <label class="control-label" for="time">Желательное время звонка</label>
            <input id="time" name="time" class="form-control" v-model="formInputs.time" type="text">
          </div>

          <div class="form-group">
            <label class="control-label" for="email">Адрес e-mail</label>
            <input id="email" name="email" class="form-control" v-model="formInputs.email" type="email">
          </div>



          <div class="form-group">
            <label class="control-label" for="message">Сообщение</label>
            <textarea id="msg" name="msg" class="form-control" v-model="formInputs.msg"></textarea>
          </div>

      </div>

  	  <div class="modal-footer">
        <button type="button" class="btn btn-default pull-left" data-dismiss="modal">Закрыть</button>
        <button type="submit" class="btn btn-primary pull-right">Отправить</button>
      </div>

     </div>
    </form>


  </div>
</div>
TokenMismatchException in VerifyCsrfToken.php line 68:

    in VerifyCsrfToken.php line 68
    at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 137
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ShareErrorsFromSession.php line 49
    at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 137
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) in StartSession.php line 64
    at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 137
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37
    at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 137
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) in EncryptCookies.php line 59
    at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 137
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 104
    at Pipeline->then(object(Closure)) in Router.php line 644
    at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 618
    at Router->dispatchToRoute(object(Request)) in Router.php line 596
    at Router->dispatch(object(Request)) in Kernel.php line 267
    at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) in Pipeline.php line 53
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Debugbar.php line 51
    at Debugbar->handle(object(Request), object(Closure)) in Pipeline.php line 137
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 46
    at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 137
    at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
    at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 104
    at Pipeline->then(object(Closure)) in Kernel.php line 149
    at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116
    at Kernel->handle(object(Request)) in index.php line 54

#13 Re: Laravel 5.x » не могу передать $request в Mailable в Laravel 5.3 » 08.10.2016 13:58:09

получилось!!!
1) сначала надо объявить пустую публичную переменную $input
2) потом ей в __construct присвоить значение $request->all(). Но обязательно надо добавить $this
и уже тогда она попадает в шаблон


use Illuminate\Http\Request;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;

class Callback extends Mailable
{
    use Queueable, SerializesModels;

    public $input;

    public function __construct(Request $request)
    {
        $this->input = $request->all();
    }


    public function build()
    {
        return $this->from('info@expertphp.in')
                    ->view('emails.callback');
    }
}

#14 Re: Laravel 5.x » не могу передать $request в Mailable в Laravel 5.3 » 07.10.2016 23:19:10

вот так я тоже пробовал
в ответ получаю Undefined variable: name

namespace App\Mail;
use Illuminate\Http\Request;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;

class Callback extends Mailable
{
    use Queueable, SerializesModels;

    public $request;

    public function __construct(Request $request)
    {
        $this->request = $request->all();
    }

    public function build(Request $request)
    {
        return $this->view('emails.callback');
    }
}

#15 Re: Laravel 5.x » не могу передать $request в Mailable в Laravel 5.3 » 02.10.2016 21:17:29

сейчас попробовал сделать так

        public function build()
        {
            return $this->view('emails.callback')->withRequest($request);
        }

и так

        public function build(Request $request)
        {
            return $this->view('emails.callback')->withRequest($request);
        }

результат тот же Undefined variable: request

#16 Re: Laravel 5.x » не могу передать $request в Mailable в Laravel 5.3 » 02.10.2016 15:56:21

Ну формально да, не передаю. Но если ты посмотришь видео на ларакасте https://laracasts.com/series/whats-new- … episodes/6
То в нем Джефри точно также не передаёт переменные во вьюху.

#17 Laravel 5.x » не могу передать $request в Mailable в Laravel 5.3 » 02.10.2016 11:10:26

schel4ok
Ответов: 9

не могу понять как передать объект $request в Mailable Laravel 5.3
я всё время получаю ошибку, что $request is not defined.


web.php

    Route::get('/',  			['as' => 'home', 		'uses' => 'HomeController@index']);
    Route::get('/callback', 		['as' => 'callback.show', 	'uses' => 'PostController@callbackshow']);
    Route::post('/callback', 		['as' => 'callback.send', 	'uses' => 'PostController@callbacksend']);

Controllers\PostController.php

    namespace App\Http\Controllers;
    use App\Mail\Callback;
    use Illuminate\Http\Request;
    
    
    class PostController extends Controller {
    
    
        public function __construct()
        {
        }
    
        public function callbackshow() 
        {
            return view('callback');   
        }
    
        public function callbacksend(Request $request) 
        {
            $email = new Callback($request);
            \Mail::to('test@gmail.com')->send($email);
        }

Mail\Callback.php

    namespace App\Mail;
    use Illuminate\Http\Request;
    use Illuminate\Bus\Queueable;
    use Illuminate\Mail\Mailable;
    use Illuminate\Queue\SerializesModels;
    use Illuminate\Contracts\Queue\ShouldQueue;
    
    class Callback extends Mailable
    {
        use Queueable, SerializesModels;
    
        public function __construct(Request $request)
        {
            $this->request = $request->all();
        }
    
        public function build()
        {
            return $this->view('emails.callback');
        }
    }

emails\callback.blade.php

    Name: {{ $request->name }}<br>
    Email :  {{ $request->email }}<br>

вот ошибка

    Whoops, looks like something went wrong.
    2/2 ErrorException in 76aac56b59bc685390113940ddc975544836b896.php line 2: Undefined variable: request (View: D:\OpenServer\domains\blog2\resources\views\emails\callback.blade.php)
    
        in 76aac56b59bc685390113940ddc975544836b896.php line 2
        at CompilerEngine->handleViewException(object(ErrorException), '0') in PhpEngine.php line 44
        at PhpEngine->evaluatePath('D:\OpenServer\domains\blog2\storage\framework\views/76aac56b59bc685390113940ddc975544836b896.php', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag), 'connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message))) in CompilerEngine.php line 59
        at CompilerEngine->get('D:\OpenServer\domains\blog2\resources\views/emails/callback.blade.php', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag), 'connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message))) in View.php line 149
        at View->getContents() in View.php line 120
        at View->renderContents() in View.php line 85
        at View->render() in Mailer.php line 430
        at Mailer->getView('emails.callback', array('connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message))) in Mailer.php line 310
        at Mailer->addContent(object(Message), 'emails.callback', null, null, array('connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message))) in Mailer.php line 186
        at Mailer->send('emails.callback', array('connection' => null, 'queue' => null, 'delay' => null), object(Closure)) in Mailable.php line 117
        at Mailable->send(object(Mailer)) in Mailer.php line 173
        at Mailer->send(object(Callback)) in MailableMailer.php line 99
        at MailableMailer->send(object(Callback)) in PostController.php line 24
        at PostController->callbacksend(object(Request))
        at call_user_func_array(array(object(PostController), 'callbacksend'), array(object(Request))) in Controller.php line 55
        at Controller->callAction('callbacksend', array(object(Request))) in ControllerDispatcher.php line 44
        at ControllerDispatcher->dispatch(object(Route), object(PostController), 'callbacksend') in Route.php line 190
        at Route->runController() in Route.php line 144
        at Route->run(object(Request)) in Router.php line 642
        at Router->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 53
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in SubstituteBindings.php line 41
        at SubstituteBindings->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in VerifyCsrfToken.php line 65
        at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ShareErrorsFromSession.php line 49
        at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in StartSession.php line 64
        at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37
        at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in EncryptCookies.php line 59
        at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 104
        at Pipeline->then(object(Closure)) in Router.php line 644
        at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 618
        at Router->dispatchToRoute(object(Request)) in Router.php line 596
        at Router->dispatch(object(Request)) in Kernel.php line 267
        at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) in Pipeline.php line 53
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 46
        at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 104
        at Pipeline->then(object(Closure)) in Kernel.php line 149
        at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116
        at Kernel->handle(object(Request)) in index.php line 54
    
    1/2 ErrorException in 76aac56b59bc685390113940ddc975544836b896.php line 2: Undefined variable: request
    
        in 76aac56b59bc685390113940ddc975544836b896.php line 2
        at HandleExceptions->handleError('8', 'Undefined variable: request', 'D:\OpenServer\domains\blog2\storage\framework\views\76aac56b59bc685390113940ddc975544836b896.php', '2', array('__path' => 'D:\OpenServer\domains\blog2\storage\framework\views/76aac56b59bc685390113940ddc975544836b896.php', '__data' => array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag), 'connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message)), 'obLevel' => '0', '__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag), 'connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message))) in 76aac56b59bc685390113940ddc975544836b896.php line 2
        at include('D:\OpenServer\domains\blog2\storage\framework\views\76aac56b59bc685390113940ddc975544836b896.php') in PhpEngine.php line 42
        at PhpEngine->evaluatePath('D:\OpenServer\domains\blog2\storage\framework\views/76aac56b59bc685390113940ddc975544836b896.php', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag), 'connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message))) in CompilerEngine.php line 59
        at CompilerEngine->get('D:\OpenServer\domains\blog2\resources\views/emails/callback.blade.php', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag), 'connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message))) in View.php line 149
        at View->getContents() in View.php line 120
        at View->renderContents() in View.php line 85
        at View->render() in Mailer.php line 430
        at Mailer->getView('emails.callback', array('connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message))) in Mailer.php line 310
        at Mailer->addContent(object(Message), 'emails.callback', null, null, array('connection' => null, 'queue' => null, 'delay' => null, 'message' => object(Message))) in Mailer.php line 186
        at Mailer->send('emails.callback', array('connection' => null, 'queue' => null, 'delay' => null), object(Closure)) in Mailable.php line 117
        at Mailable->send(object(Mailer)) in Mailer.php line 173
        at Mailer->send(object(Callback)) in MailableMailer.php line 99
        at MailableMailer->send(object(Callback)) in PostController.php line 24
        at PostController->callbacksend(object(Request))
        at call_user_func_array(array(object(PostController), 'callbacksend'), array(object(Request))) in Controller.php line 55
        at Controller->callAction('callbacksend', array(object(Request))) in ControllerDispatcher.php line 44
        at ControllerDispatcher->dispatch(object(Route), object(PostController), 'callbacksend') in Route.php line 190
        at Route->runController() in Route.php line 144
        at Route->run(object(Request)) in Router.php line 642
        at Router->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 53
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in SubstituteBindings.php line 41
        at SubstituteBindings->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in VerifyCsrfToken.php line 65
        at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ShareErrorsFromSession.php line 49
        at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in StartSession.php line 64
        at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37
        at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in EncryptCookies.php line 59
        at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 104
        at Pipeline->then(object(Closure)) in Router.php line 644
        at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 618
        at Router->dispatchToRoute(object(Request)) in Router.php line 596
        at Router->dispatch(object(Request)) in Kernel.php line 267
        at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) in Pipeline.php line 53
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 46
        at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 137
        at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33
        at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 104
        at Pipeline->then(object(Closure)) in Kernel.php line 149
        at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116
        at Kernel->handle(object(Request)) in index.php line 54

#18 Laravel 5.x » не могу заставить работать angular » 19.06.2016 00:23:27

schel4ok
Ответов: 0

простой скрипт angular не работает в Laravel


в файле gulp я попытался закомментировать остальные скрипты и удалить уже скопированные файлы из папки resources/js, чтобы потестить только angular.

gulp.js

elixir(function(mix) {
 mix
 // .copy('vendor/bower_components/jquery/dist/jquery.js', 'resources/js/1-jquery.js')  
 // .copy('vendor/bower_components/bootstrap/dist/js/bootstrap.js', 'resources/js/2-bootstrap.js')  
  .copy('vendor/bower_components/angular/angular.js', 'resources/js/3-angular.js')  
 // .copy('vendor/bower_components/lightgallery/dist/js/lightgallery-all.js', 'resources/js/4-lightgallery.js')  
 // .copy('vendor/bower_components/lightslider/dist/js/lightslider.js', 'resources/js/5-lightslider.js')  

  .scriptsIn('resources/js') 
  .version([
      'public/css/app.css',
      'public/js/all.js'
      ])  
});

blade.php

{!! Form::open(array('route' => 'order', 'class' => 'go-right calculator', 'files' => true, 'ng-app' => 'SaunaDoorCalc', 'ng-controller' => 'SaunaDoorCalcController')) !!}

	<div class="form-group door_size_radio col-xs-12 col-sm-6" style="margin-bottom:67px;"><h4>Размер дверной коробки (в миллиметрах)</h4>
		<div ng-repeat="a in sizeswitch" class="form-group">
		<input type="radio" value="@{{a.value}}" name="door_size_radio" class="radio">
		<label for="door_size_radio" class="radio">@{{a.label}}</label>
		</div>
	</div>
{!! Form::close() !!}

app.js

angular
  .module('SaunaDoorCalc',[])
  .controller('SaunaDoorCalcController', function($scope) {

    $scope.sizeswitch = [           
      { value: 'standard', label: 'Стандартный' },
      { value: 'special',  label: 'Ввести размер' }
    ];
  
  
    $scope.submit = function() {
      alert('submit');
    };

  
    $scope.myDate = new Date();
    $scope.minDate = new Date(
      $scope.myDate.getFullYear(),
      $scope.myDate.getMonth() - 2,
      $scope.myDate.getDate());
    $scope.maxDate = new Date(
      $scope.myDate.getFullYear(),
      $scope.myDate.getMonth() + 2,
      $scope.myDate.getDate());
  $scope.onlyWeekendsPredicate = function(date) {
    var day = date.getDay();
    return day === 0 || day === 6;
  }

  });

но на странице я вижу {{a.label}} и только один раз, а не 2

#19 Re: Laravel 5.x » jquery variable in controller » 10.06.2016 12:24:55

А че делать что нормально было?
Я с этим Аяксом вообще ни разу не связывался. Поэтому вообще не пойму как быть

#20 Re: Laravel 5.x » jquery variable in controller » 10.06.2016 11:00:15

там нету нихрена
total туда не попадает


Content-Type: multipart/form-data; boundary=---------------------------304341834022026
Content-Length: 1865

-----------------------------304341834022026
Content-Disposition: form-data; name="_token"

RNf1X3RBBpzmTY7kKQpybECb3vAuQkc5fhVksEEC
-----------------------------304341834022026
Content-Disposition: form-data; name="calc"

skinali
-----------------------------304341834022026
Content-Disposition: form-data; name="size_b1"

2000
-----------------------------304341834022026
Content-Disposition: form-data; name="size_h1"

600
-----------------------------304341834022026
Content-Disposition: form-data; name="rozetki"

2
-----------------------------304341834022026
Content-Disposition: form-data; name="otverstija"

1
-----------------------------304341834022026
Content-Disposition: form-data; name="krepej"

4
-----------------------------304341834022026
Content-Disposition: form-data; name="glass"

Прозрачное
-----------------------------304341834022026
Content-Disposition: form-data; name="led"

нет
-----------------------------304341834022026
Content-Disposition: form-data; name="dekor"

Фотопечать
-----------------------------304341834022026
Content-Disposition: form-data; name="dostavka"

в пределах МКАД
-----------------------------304341834022026
Content-Disposition: form-data; name="zamkad"


-----------------------------304341834022026
Content-Disposition: form-data; name="montazh"

нет
-----------------------------304341834022026
Content-Disposition: form-data; name="name"

Илья
-----------------------------304341834022026
Content-Disposition: form-data; name="tel"

1234567
-----------------------------304341834022026
Content-Disposition: form-data; name="email"

test@mail.ru
-----------------------------304341834022026
Content-Disposition: form-data; name="message"


-----------------------------304341834022026--

#21 Re: Laravel 5.x » jquery variable in controller » 10.06.2016 10:40:50

закомментировал return false;  - не помогло

#22 Laravel 5.x » jquery variable in controller » 10.06.2016 10:27:55

schel4ok
Ответов: 9

Здравствуйте друзья

хочу сделать на странице форму онлайн калькулятора
упрощенно будет выглядеть так

 
{!! Form::open(array('route' => 'order', 'class' => 'go-right calculator', 'files' => true)) !!}
@if(Session::has('message'))
    <div class="alert alert-info">{{Session::get('message')}}</div>
@endif
@if(Session::has('errors'))
	<div class="alert alert-info">@foreach($errors->all() as $error){{ $error }}<br>@endforeach
</div>
@endif

	<input name="calc" type="hidden" value="mycalc">

<div class="row">
	<div class="form-group col-xs-6 col-sm-4"><h4>Размеры</h4></div>
	<div class="form-group col-xs-3 col-sm-4">
		<input name="quantity" type="text" class="form-control">
		<label for="quantity">Кол-во</label>
	</div>
</div>
	<div class="col-xs-6"><h4>Цена</h4></div>
	<div class="col-xs-6"><div class="custom-dropdown custom-dropdown--white">
    	<select class="price custom-dropdown__select custom-dropdown__select--white" name="price">
        	<option value="2200" selected="selected">2200</option>
        	<option value="2800" >2200</option>
        	<option value="4000" >2200</option>
    	</select>
	</div></div>

		<div class="form-group col-xs-12 col-sm-6">
			<input id="name" name="name" type="text" class="form-control" required>
			<label for="name">Ваше имя *</label>
		</div>
		<div class="form-group col-xs-12 col-sm-6">
			<input id="phone" name="tel" type="tel" class="form-control" required>
			<label for="phone">Номер телефона *</label>
		</div>
		<div class="form-group col-xs-12 col-sm-6">
			<input id="email" name="email" type="email" class="form-control" required>
			<label for="email">Адрес электронной почты *</label>
		</div>
		<div class="form-group col-xs-12 col-sm-6">
			<textarea id="message" name="message" class="form-control"></textarea>
			<label for="message">Комментарии</label>
		</div>

  	  <div class="footer col-xs-12 col-sm-6">
        <button type="submit" class="btn btn-primary pull-right">Отправить заказ</button>
      </div>

<div class="result col-xs-12 col-sm-6"><h4>Итоговая спецификация</h4>
Стоимость: <span class="total">0</span>руб</div>

вот скрипт, который считает некоторое значение и выводит результат на странице в блок, имеющий класс .total

 
$(document).ready(function () {

  $('input[name="quantity"]').change(function () {
    calculation();
  });
  
  $('select.price').change(function () {
    calculation();
  });

  function calculation() {
    var total = $('input[name="quantity"]').val() * $('select.price option:selected').val();
    $('.result').children('.total').html( total );
    return false;

    $.ajax({
    type: "POST",
    url: "/path/to/my/page",
    data: {total:total },
    });

    };
});

насколько я понимаю последние строчки $.ajax при нажатии на кнопку отправить должны передавать переменную total в массив POST и соответственно я смогу обрабатывать эту переменную в контроллере, но почему-то этого не происходит

вызов dd($request->all()) выводит массив только со значениями quantity и price


	public function order(CalculatorRequest $request) 
	{
		$input = Input::all();
		$calc = $request->input('calc');

        //check if its our form
        if ( Session::token() !== Input::get( '_token' ) ) {
            return Response::json( array(
                'msg' => 'Несанкционированная попытка отправки письма'
            ) );
        }


		if ( $calc == 'mycalc' ) {
			$mailtemplate = 'emails.mycalc';
            $mailarray = array(
                'quantity' => $request->quantity,
            	'price' => $request->price,
            	'total' => $request->total,
            	'name' => $request->input('name'),
            	'tel' => $request->input('tel'),
            	'email' => $request->input('email'),
            	'user_message' => $request->input('message'),
            	);


		Mail::send($mailtemplate, $mailarray,

        	function($message) use ($request, $input)
    			{
        			$message->from('admin@mysyte.ru', $request->input('name') );
        			$message->to('info@mysyte.ru', 'info');
                    $message->setCc($request->input('email'), $request->input('name'));
        			$message->replyTo($request->input('email'), $request->input('name') );
        			$message->subject('Заказ с сайта');
				});
    //  return Redirect::back()->with('message', 'Ваше сообщение отправлено! Мы свяжемся с вами в ближайшее время для уточнения деталей заказа');
    // строку выше я пока заблокировал, чтобы видеть массив POST
      return Redirect::back()->with( dd($request->all()) );
        
	}
}

и в конце мне должно приходить письмо mycalc.blade.php

<p>
Кол-во: {{ $size }}<br>
Цена: {{ $price }}<br>
-------------------------<br>
Сумма: {{ $total }}<br>
-------------------------<br>
Имя: {{ $name }}<br>
Телефон: {{ $tel }}<br>
Email: {{ $email }}<br>
-------------------------<br>
Сообщение: {{ $user_message }}
</p>
<p>Это сообщение отправлено со страницы  $pagetitle  -  {{ $_SERVER['SERVER_NAME'] }} $pageurl</p>

вот переменную  $total   никак не получается получить

#23 Re: Laravel 5.x » как получить значение атрибута в письме? » 03.04.2016 09:33:40

например при обработке формы я могу обращаться к атрибуту текста вот так
$("input[name='glass']:checked").attr('text')

но я не пойму как это передать в laravel

#24 Re: Laravel 5.x » как получить значение атрибута в письме? » 02.04.2016 23:48:33

в смысле в blade шаблоне письма наделать конструкций if...else
типа так?

@if  ($glass='clear')
<p>
Стекло: прозрачное<br>
</p>
elseif ($glass='bronza')
.....

Мне это делать не очень хочется. Это громоздко.
Хочется найти решение типа такого
$request->input('glass').attr(text)

#25 Laravel 5.x » как получить значение атрибута в письме? » 02.04.2016 22:34:51

schel4ok
Ответов: 3

помогите, товарищи, решить проблемку

в blade шаблоне странице у меня есть переключатель

		<input type="radio" value="clear" data-price="3000" name="glass" class="radio" text="Прозрачное">
		<label for="glass" class="radio">Прозрачное (стандарт)</label>

		<input type="radio" value="matelux" data-price="4000" name="glass" class="radio" text="Матовое">
		<label for="glass" class="radio">Матовое</label>

		<input type="radio" value="bronza" data-price="5200" name="glass" class="radio" text="Бронза">
		<label for="glass" class="radio">Бронза</label>

		<input type="radio" value="bronza_matelux" data-price="6200" name="glass" class="radio" text="Матовая бронза">
		<label for="glass" class="radio">Матовая бронза</label>

в blade шаблоне письма

<p>
Стекло: {{ $glass }}<br>
</p>

в контроллере

		Mail::send('emails.calculator',
        	array(
            	'glass' => $request->input('glass'),
            	)

И в полученном письме у меня отображается значение атрибута value.
Но мне хочется, чтобы там было значение атрибута text.
Это можно как-то сделать?

Подвал раздела