Ошибка в Формуляре JQery

Я объединяю один admin template с laravel у которого есть один wizard для envió данных, деталь состоит, в том, что кликнув в посылании формуляра, он просто не посылает данных, я не очень хороший с Javascript, я надеюсь, что кто-то может ориентировать меня, если чего-то мне не хватает или плохое.

Формуляр функционирует, но не посылает абсолютно ничего в базу данных, сначала я определил маршрут:

Route::resource('empresas', 'EmpresasController');

После верь в формуляр где каждый input он содержит name чтобы посылать для того, чтобы драйвер это получил, уже разрешение с шаблоном и я изменил ее в мою необходимость:

<form method="post" action="{{ route('empresas.store') }}" id="kt_form" class="kt-form kt-form--fit kt-form--label-right" >
    @csrf
    <!--begin: Form Wizard Step 1-->
    <div class="kt-wizard-v2__content" data-ktwizard-type="step-content" data-ktwizard-state="current">
        <div class="kt-heading kt-heading--md">{{ __('forms.Account_Details') }}</div>
        <div class="kt-form__section kt-form__section--first">
            <div class="kt-wizard-v2__form">
                <div class="form-group row">
                    <div class="col-lg-7">
                        <label>{{ __('forms.Razon_Social') }}</label>
                        <div class="input-group">
                            <div class="input-group-prepend">
                                <span class="input-group-text">
                                    <i class="la la-registered"></i>
                                </span>
                            </div>
                            <input type="text" class="form-control" name="nombreempresa" placeholder="Enter full name">
                        </div>
                        <span class="form-text text-muted">{{ __('forms.Indication_RS') }}</span>
                    </div>
                    <div class="col-lg-5">
                        <label class="">{{ __('forms.Nombre_Comercial') }}</label>
                        <div class="input-group">
                            <div class="input-group-prepend">
                                <span class="input-group-text">
                                    <i class="la la-bookmark"></i>
                                </span>
                            </div>
                            <input type="text" class="form-control" name="nombrecomercial" placeholder="Enter email">
                        </div>
                        <span class="form-text text-muted">{{ __('forms.Indication_NC') }}</span>
                    </div>
                </div>
                <div class="form-group row">
                    <div class="col-lg-4">
                        <div class="form-group">
                            <label>{{ __('forms.Sectors') }}</label>
                            {!! Form::select('sector',$sectors,null,['class' => 'form-control', 'name' => 'sector','placeholder' => 'Selecciona', 'width' => '100']) !!}
                            <span class="form-text text-muted">{{ __('forms.Indication_Sector') }}</span>
                        </div>
                    </div>
                    <div class="col-lg-4">
                        <label class="">{{ __('forms.Company_Site') }}</label>
                        <div class="input-group">
                            <div class="input-group-prepend">
                                <span class="input-group-text">
                                    <i class="la la-internet-explorer"></i>
                                </span>
                            </div>
                            <input type="text" class="form-control" name="sitioweb" placeholder="Enter email">
                        </div>
                        <span class="form-text text-muted">{{ __('forms.Indication_CS') }}</span>
                    </div>
                </div>
                <div class="form-group row">
                    <div class="col-lg-4">
                        <label>{{ __('forms.Rfc') }}</label>3
                        <div class="input-group">
                            <div class="input-group-prepend">
                                <span class="input-group-text">
                                    <i class="la la-user-secret"></i>
                                </span>
                            </div>
                            <input type="text" class="form-control" name="idfiscal">
                        </div>
                        <span class="form-text text-muted">{{ __('forms.Indication_Rfc') }}</span>
                    </div>
                    <div class="col-lg-4">
                        <label>{{ __('forms.Phone') }}</label>
                        <div class="input-group">
                            <div class="input-group-prepend">
                                <span class="input-group-text">
                                    <i class="la la-phone"></i>
                                </span>
                            </div>
                            <input type="tel" id="kt_inputmask_3" class="form-control" name="tel">
                        </div>
                        <span class="form-text text-muted">{{ __('forms.Indication_Tel') }}</span>
                    </div>
                    <div class="col-lg-4">
                        <label>{{ __('forms.Email') }}</label>
                        <div class="input-group">
                            <div class="input-group-prepend">
                                <span class="input-group-text">
                                    <i class="la la-at"></i>
                                </span>
                            </div>
                            <input type="email" class="form-control" name="email" placeholder="Email" value="john.wick@reeves.com">
                        </div>
                        <span class="form-text text-muted">{{ __('forms.Indication_Email') }}</span>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <!--end: Form Wizard Step 1-->

    <!--begin: Form Wizard Step 2-->
    <div class="kt-wizard-v2__content" data-ktwizard-type="step-content">
        <div class="kt-heading kt-heading--md">{{ __('forms.Title_Ubic') }}</div>
        <div class="kt-form__section kt-form__section--first">
            <div class="kt-wizard-v2__form">
                <div class="form-group row">
                    <div class="col-lg-3">
                        <label>{{ __('forms.Country') }}</label>
                        <div class="col-lg-4 col-md-9 col-sm-12">
                            {!! Form::select('country',$countries,null,['id'=>'country', 'class' => 'form-control kt-select2', 'name' => 'pais','placeholder' => 'Selecciona', 'width' => '100']) !!}
                        </div>
                    </div>
                    <div class="col-lg-3">
                        <label>{{ __('forms.State') }}</label>
                        <div class=" col-lg-4 col-md-9 col-sm-12">
                            {!! Form::select('state',['placeholder'=>'Selecciona'],null,['id'=>'state', 'name' => 'estado', 'class'=>'form-control kt-select2']) !!}
                        </div>
                    </div>
                    <div class="col-lg-3">
                        <label>{{ __('forms.City') }}</label>
                        <div class=" col-lg-4 col-md-9 col-sm-12">
                            {!! Form::select('town',['placeholder'=>'Selecciona'],null,['id'=>'town', 'name' => 'ciudad', 'class' => 'form-control kt-select2']) !!}
                        </div>
                    </div>
                    <div class="col-lg-3">
                        <label>{{ __('forms.Colony') }}</label>
                        <div class=" col-lg-4 col-md-9 col-sm-12">
                            {!! Form::select('colony',['placeholder'=>'Selecciona'],null,['id'=>'colony', 'name' => 'colonia', 'class' => 'form-control kt-select2']) !!}
                        </div>
                    </div>
                </div>
                <div class="row">
                    <div class="col-lg-7">
                        <label>{{ __('forms.Calle') }}:</label>
                        <div class="kt-input-icon kt-input-icon--right">
                            <input type="text" class="form-control" name="calleynumero" placeholder="Enter your address">
                            <span class="kt-input-icon__icon kt-input-icon__icon--right">
                                <span>
                                    <i class="la la-map-marker"></i>
                                </span>
                            </span>
                        </div>
                        <span class="form-text text-muted">{{ __('forms.Indication_Direcc') }}</span>
                    </div>
                    <div class="col-lg-2">
                        <label>{{ __('forms.Postcode') }}</label>
                        <div class="kt-input-icon kt-input-icon--right">
                            {!! Form::text('postalcode', null, ['id'=>'postalcode','value'=>'', 'name' => 'codigopostal', 'class' => 'form-control', 'disabled' => 'disabled']) !!}
                            <span class="kt-input-icon__icon kt-input-icon__icon--right">
                                <span>
                                    <i class="la la-truck"></i>
                                </span>
                            </span>
                        </div>
                        <span class="form-text text-muted">{{ __('forms.Indication_Post') }}</span>
                    </div>
                    <div class="col-lg-3">
                        <label>{{ __('forms.Tel') }}:</label>
                        <div class="kt-input-icon kt-input-icon--right">
                            <input type="text" id="kt_inputmask_3" name="tel2" class="form-control">
                            <span class="kt-input-icon__icon kt-input-icon__icon--right">
                                <span>
                                    <i class="la la-phone"></i>
                                </span>
                            </span>
                        </div>
                        <span class="form-text text-muted">{{ __('forms.Indication_Phone') }}</span>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <!--end: Form Wizard Step 4-->
    <!--begin: Form Actions -->
    <div class="kt-form__actions">
        <div class="btn btn-secondary btn-md btn-tall btn-wide kt-font-bold kt-font-transform-u" data-ktwizard-type="action-prev">
            Previous
        </div>
        <div class="btn btn-success btn-md btn-tall btn-wide kt-font-bold kt-font-transform-u" data-ktwizard-type="action-submit">
            Submit
        </button>
        <div class="btn btn-brand btn-md btn-tall btn-wide kt-font-bold kt-font-transform-u" data-ktwizard-type="action-next">
            Next Step
        </div>
    </div>
    <!--end: Form Actions -->
</form>

Последующий Драйвер EmpresasController оставаясь следующей формы:

<?php

namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\Empresa;
class EmpresasController extends Controller
{
     public function __construct()
    {
        $this->middleware('auth');
    }
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
       //
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
        //
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
        $request->validate([
            'nombreempresa'=>'required',
            'nombrecomercial'=>'required',
            'idfiscal'=>'required|max:13',
            'tel' => 'required|numeric',
            'calleynumero'=>'required',
            'colonia'=>'required',
            'ciudad'=>'required',
            'estado'=>'required',
            'codigopostal'=>'required',
            'pais'=>'required',
            'sector'=>'required',
            'serial'=>'required',
        ]);

        $empresa = new Empresa([
            'nombreempresa' => $request->get('nombreempresa'),
            'nombrecomercial' => $request->get('nombrecomercial'),
            'idfiscal' => $request->get('idfiscal'),
            'adminid' => auth()->id(),
            'tel' => $request->get('tel'),
            'calleynumero' => $request->get('calleynumero'),
            'colonia' => $request->get('colonia'),
            'ciudad' => $request->get('ciudad'),
            'estado' => $request->get('estado'),
            'codigopostal' => $request->get('codigopostal'),
            'pais' => $request->get('pais'),
            'email' => $request->get('email'),
            'acceso' => '1',
            'sector' => $request->get('sector'),
            'tipo' => '1',
            'sitioweb' => $request->get('sitioweb'),
            'serial' => 'XEVB-TBMN-KHKL-YB2JI89J',
            'wizard' => '1'
        ]);
        $empresa->save();
        return redirect('/dashboard')->with('success', 'Gracias hemos recibido tu informacion!');
    }

    /**
     * Display the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function show($id)
    {
        //
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function edit($id)
    {
        //
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, $id)
    {
        //
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */
    public function destroy($id)
    {
        //
    }
}

И это модель:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Empresa extends Model
{
    /**
     * The database table used by the model.
     *
     * @var string
     */
    protected $table = 'empresas';

    /**
    * The database primary key value.
    *
    * @var string
    */
    protected $primaryKey = 'id';

    /**
     * Attributes that should be mass-assignable.
     *
     * @var array
     */
    protected $fillable = ['nombreempresa',
    'nombrecomercial',
    'idfiscal',
    'logo',
    'adminid',
    'tel',
    'calleynumero',
    'colonia',
    'ciudad',
    'estado',
    'codigopostal',
    'pais',
    'status',
    'email',
    'acceso',
    'verified',
    'sector',
    'tipo',
    'serial',
    'wizard',
    'created_at',
    'updated_at'];
}

И в конце концов это код javascript что дает ему аспект формуляру и причине, у них есть один пойдите каждый input:

"use strict";

// Class definition
var KTWizard2 = function () {
    // Base elements
    var wizardEl;
    var formEl;
    var validator;
    var wizard;

    // Private functions
    var initWizard = function () {
        // Initialize form wizard
        wizard = new KTWizard('kt_wizard_v2', {
            startStep: 1,
        });

        // Validation before going to next page
        wizard.on('beforeNext', function(wizardObj) {
            if (validator.form() !== true) {
                wizardObj.stop();  // don't go to the next step
            }
        })

        // Change event
        wizard.on('change', function(wizard) {
            KTUtil.scrollTop();
        });
    }

    var initValidation = function() {
        validator = formEl.validate({
            // Validate only visible fields
            ignore: ":hidden",

            // Validation rules
            rules: {
                //= Step 1
                fname: {
                    required: true
                },
                lname: {
                    required: true
                },
                phone: {
                    required: true
                },
                emaul: {
                    required: true,
                    email: true
                },

                //= Step 2
                address1: {
                    required: true
                },
                postcode: {
                    required: true
                },
                city: {
                    required: true
                },
                state: {
                    required: true
                },
                country: {
                    required: true
                },

                //= Step 3
                delivery: {
                    required: true
                },
                packaging: {
                    required: true
                },
                preferreddelivery: {
                    required: true
                },

                //= Step 4
                locaddress1: {
                    required: true
                },
                locpostcode: {
                    required: true
                },
                loccity: {
                    required: true
                },
                locstate: {
                    required: true
                },
                loccountry: {
                    required: true
                },

                //= Step 5
                ccname: {
                    required: true
                },
                ccnumber: {
                    required: true,
                    creditcard: true
                },
                ccmonth: {
                    required: true
                },
                ccyear: {
                    required: true
                },
                cccvv: {
                    required: true,
                    minlength: 2,
                    maxlength: 3
                },
            },

            // Display error
            invalidHandler: function(event, validator) {
                KTUtil.scrollTop();

                swal.fire({
                    "title": "",
                    "text": "There are some errors in your submission. Please correct them.",
                    "type": "error",
                    "confirmButtonClass": "btn btn-secondary"
                });
            },

            // Submit valid form
            submitHandler: function (form) {

            }
        });
    }

    var initSubmit = function() {
        var btn = formEl.find('[data-ktwizard-type="action-submit"]');

        btn.on('click', function(e) {
            e.preventDefault();

            if (validator.form()) {
                // See: src\js\framework\base\app.js
                KTApp.progress(btn);
                //KTApp.block(formEl);

                // See: http://malsup.com/jquery/form/#ajaxSubmit
                formEl.ajaxSubmit({
                    success: function() {
                        KTApp.unprogress(btn);
                        //KTApp.unblock(formEl);

                        swal.fire({
                            "title": "",
                            "text": "The application has been successfully submitted!",
                            "type": "success",
                            "confirmButtonClass": "btn btn-secondary"
                        });
                    }
                });
            }
        });
    }

    return {
        // public functions
        init: function() {
            wizardEl = KTUtil.get('kt_wizard_v2');
            formEl = $('#kt_form');

            initWizard();
            initValidation();
            initSubmit();
        }
    };
}();

jQuery(document).ready(function() {
    KTWizard2.init();
});

Я надеюсь, что они могут помогать мне идентифицировать, если нет немного, или он плохой, я заметил, что, если я меняю метод post в get появляется сообщение, которое формуляр послал себе, но это не регистрирует в базе данных и также мне не делается очень безопасным посылать формуляр посредством get.

2
задан 09.09.2019, 15:47
1 ответ

Самое легкое, что ты можешь делать, это;

$("#formulario",).on("submit", function(e){
      e.preventDefault();

var data=$(this).serialize()
//asi se usa si no hay cmapos tipo file
//var data = new FormData(this);
//asi se usa si hay campos tipo file
  $.ajax({
      type:"Post",
      dataType:"json",
      contentType: false,  
      cache: false,  
      processData:false,  
      data:data,
      url:url,
    success: function(resp){
       if(resp["message"]==="OK"){
        }
     }
});
0
ответ дан 01.12.2019, 19:45