php ajax表单提交无效

时间:2017-05-21 05:36:38

标签: php ajax forms

我有问题用php提交ajax表单 这是我的javascript代码

$(document).ready( function() {
    $('#tagsk').tagsManager({
        prefilled: [  ],
        hiddenTagListName: 'tags',
        hiddenTagListId: 'tags',
    });
 });

$(document).ready(function () {
    $('#myform').validate({ // initialize the plugin
        rules: {
            year: {
                selectcheck: true
            }
        }
    });

    $(function() {
        $.ajaxSetup({
            headers: {
                'X-CSRF-Token': $('input[name="_token"]').val()
            }
        });
    });

});

$(document).ready(function () {
    requestRunning = false;
    validator = $('#editadform').validate({
        ignore: "",
        rules: {
            sitetitle: {
                minlength: 7,
                required: true
            },
            sitedescription: {
                minlength: 10,
                required: true
            },
            sitecatid: {
                selectcheck: true
            },
            custom_field_6: {
                minlength: 3,
                required: true
            },
        }
    });

    jQuery.validator.addMethod('selectcheck', function (value) {
        return (value != '0');
    } , 'لطفا زیر گروه آگهی خود را انتخاب کنید' );

});

function postad(actionurl) {
    if (requestRunning) return false ;

    if (! $("#editadform").valid()) {
        validator.focusInvalid();
        return false ;
    }

    $('#ajxsave').show() ;
    requestRunning = true ;
    var postData = $('#editadform').serializeArray();
    $.ajax(
    {
        url : actionurl,
        type: "POST",
        data : postData,
        success:function(data, textStatus, jqXHR)
        {
            $('#diverrors').html(data.errors) ;
            $('#divalerts').html(data.alerts) ;

            if (data.status=='success') {
              $('#siteid').val(data.siteid) ;
              if ($('#adimager').val())
                $('#divlmsg').html(data.alertimage) ;
              $('#editadform').submit() ;

            } else {

              $('#ajxsave').hide() ;
            }
        },
        error: function(jqXHR, textStatus, errorThrown)
        {
            $('#ajxsave').hide() ;
        },
        complete: function() {
            requestRunning = false;
        }
    });

    $('.btn').blur() // remove focus
    return false ;
}

function delimage(delurl) {

    $('#ajxdelpic').show() ;
    $.post( delurl ,
        {
            "_token": $( '#editadform' ).find( 'input[name=_token]' ).val(),
            "siteid" : $( '#siteid' ).val() ,
        },
        function( data ) {
            if (data.result=='deleted') {
              $( '#divdelimage').hide() ;
              $( '#divchooseimage').show() ;
              $( '.txhelp').show() ;
            } else if (data.result=='uploded') {
                  $( '#divdelimage').show() ;
                  $( '#divchooseimage').hide() ;
            }
            $( '#divpicalert').html(data.alerts) ;
            $('#ajxdelpic').hide() ;
            //do something with data/response returned by server
        },
        'json'
    );

    //prevent the form from actually submitting in browser
    return false;
}

function prepareimage() {
     $('#adimage').off( 'change' );
     $('#adimage').on( 'change', function() {
          var input = $(this),
          label = input.val().replace(/\\/g, '/').replace(/.*\//, '');
          $('#adimager').val(label) ;
      });
}

function docready() {
    $('#editadform :input').on( 'keyup', function() {
        $('#warnchange').show() ;
     });
}

$(function () { $("[data-toggle='popover']").popover({
    trigger: 'focus' ,
    container: false,
    placement: 'top',
    html: true
}) });

$( document ).ready(prepareimage);
$( document ).ready(docready) ;
$( document ).ajaxComplete(prepareimage) ;

这是我的html表单

    <form method="POST"  accept-charset="UTF-8" id="editadform" role="form" enctype="multipart/form-data">

        <input name="_token" type="hidden" value="{$token}">
    <input id="siteid" name="siteid" type="hidden">

<div class="form-group col-sm-7">
    <label for="sitetitle">عنوان</label>
    <input class="form-control" required="true" maxlength="60" name="sitetitle" type="text" id="sitetitle" >
</div>
<div class="form-group col-sm-5">
    <label for="sitecatid">گروه</label>
        <select class="form-control" id="sitecatid" name="sitecatid">
            <option value="0">انتخاب زیر گروه</option>
            {section name=x loop=$categories}
            <optgroup label="{$categories[x].name}">
                {foreach name=x from=$categories[x].id|get_sub_categories key=id item=sub}
                {if $categories[x].id|get_sub_categories neq 0}
                <option value="{$sub.id}">{$categories[x].name} &gt; {$sub.name}</option>
                {/if}
                 {/foreach}
                </optgroup>
                 {/section}
                </select>

</div>
<div class="form-group col-sm-7" >
    <label for="sitedescription">شرح آگهی</label>
    <textarea class="form-control" required="true" name="sitedescription" cols="50" rows="10" id="sitedescription"></textarea>
</div>

<div class="form-group col-sm-5"  >
    <label for="sitedescription">عکس</label>
    <div id="divpicalert"></div>
    <div class="form-control center-block" style="height: 100%;"  >

              <div id="divdelimage" style="display:none;">
                  <p align="center">
                  <button type="button" class="btn btn-danger btn-sm" onclick="delimage('http://ipanel.{$general_siteurlw}/uruns/delimage')"  >
                    حذف یا تغییر عکس
                  </button>
                  <img id="ajxdelpic" src="http://ipanel.{$general_siteurlw}/themes/default/images/ajax-loader.gif" style="display:none;" >
                  </p>
                  <img class="img-responsive" style="margin: auto;" src="" >
              </div>
              <div id="divchooseimage"  >
                  <div>
                      <div class="fileinputs">
                        <input id="adimage" class="file" tabindex="-1" name="adimage" type="file">
                        <div class="fakefile" id="spupadimage" >
                         <button type="button" class="btn btn-primary btn-sm" onclick="$('#adimage').click();" >
                            <span class="glyphicon glyphicon-upload"></span>
                               انتخاب فایل
                         </button>
                         </div>
                      </div>
                  </div>
                  <div>
                    <input id="adimager" type="text" class="form-control img-info inputboxleft" tabindex="-1" readonly>
                  </div>
              </div>

                <div class="text-muted txhelp"  >
                <p>
                <small>

                - ارسال عکس برای آگهی الزامی نیست، در صورتی که مایلید عکس ارسال کنید، با استفاده از کلید (انتخاب فایل) عکس مورد نظر را از روی سیستم خود انتخاب کنید.
                <br>
                - عکس انتخاب شده، بعد از زدن کلید ثبت آگهی، ارسال می‌شود.
                <br>
                -  ابعاد عکس به عرض ۵۰۰ و ارتفاع ۴۰۰ پیکسل می‌باشد.
                 برای کیفیت نمایش بهتر است، نسبت عرض عکس به ارتفاع آن ۵ به ۴ باشد. بطور مثال ۶۰۰ در ۴۸۰ .
                <br>
                - فرمت تصاویر ارسالی می‌تواند بصورت gif یا jpg باشد. حجم تصویر تا حداکثر 4 مگابایت است.
                <br>
                - تصاویر با حجم کمتر، سریعتر ارسال می‌شود.
                </small>
                </p>
                </div>

    </div>
</div>


<div class="form-group col-sm-7">
    <label for="tags">عبارات کلیدی</label>
    <a tabindex="0" href="javascript:void(0);" class="popover-dismiss"
              data-toggle="popover" title="قابلیت جستجوی آگهی خود را بالا ببرید"
              data-content="
<p>
پس از وارد کردن هر عبارت و یا کلمه، کلید Enter را بزنید، تا آن عبارت بصورت مشخص در کادر ظاهر شود.
</p>
<p>
عبارات یا کلمات به همان صورتی که وارد می‌شوند، قابل جستجو می‌باشند. در نظر بگیرید اشخاص با چه عباراتی ممکن است آگهی شما را جستجو کنند.
</p>
<p>
در صورتیکه کلمات یا عبارات مستقیما به آگهی شما مرتبط نباشد، آگهی مورد تایید قرار نخواهد گرفت.
</p>
<p>
حداکثر 15 کلمه یا عبارت قابل ثبت است.
</p>
<p>
مثال جهت فروش آگهی خودرو پراید:
<img src='http://ipanel.{$general_siteurlw}/themes/default/images/pridetag.jpg' width='213px' height='99px'>
</p>

              ">
             (راهنما)
    </a>
    <br>
    <input id="tagsk" name="tagsk" placeholder="کلمه یا عبارت کلیدی" class="form-control tm-input tm-input-success" type="text">
    <span class="help-block">پس از ثبت هر عبارت کلید Enter یا - یا Tab را زده و سپس عبارت بعدی را وارد کنید.
    </span>
</div>

<div class="form-group col-sm-5">
    <label for="custom_field_2">قیمت</label>
    <input class="form-control" maxlength="20" name="custom_field_2" type="text" id="custom_field_2">
</div>

<div class="form-group col-sm-5">
    <label for="expire_days">اعتبار</label>
    <select class="form-control" id="expire_days" name="expire_days"><option value="7">یک هفته</option><option value="30" selected="selected">یک ماه</option><option value="60">دو ماه</option></select>
</div>

<div class="form-group col-sm-7">
    <label for="custom_field_6">نام شخص یا شرکت</label>
    <input class="form-control" maxlength="60" name="custom_field_6" type="text" value="{$user_name}" id="custom_field_6">
</div>

<div class="form-group col-sm-5">
    <label for="custom_field_3">تلفن</label>
    <input class="form-control inputboxleft" maxlength="50" name="custom_field_3" type="text" id="custom_field_3">
</div>


    <div class="form-group col-sm-3">
        <label for="custom_field_1">موقعیت</label>
        <select class="form-control" id="custom_field_1" name="custom_field_1"><option value="تهران">تهران</option><option value="کرج">کرج</option><option value="آذربایجان شرقی">آذربایجان شرقی</option><option value="آذربایجان غربی">آذربایجان غربی</option><option value="اردبیل">اردبیل</option><option value="اصفهان">اصفهان</option><option value="ایلام">ایلام</option><option value="بوشهر">بوشهر</option><option value="چهارمحال و بختیاری">چهارمحال و بختیاری</option><option value="خراسان">خراسان</option><option value="خوزستان">خوزستان</option><option value="زنجان">زنجان</option><option value="سمنان">سمنان</option><option value="سیستان و بلوچستان">سیستان و بلوچستان</option><option value="فارس">فارس</option><option value="قزوین">قزوین</option><option value="قم">قم</option><option value="کردستان">کردستان</option><option value="کرمان">کرمان</option><option value="کرمانشاه">کرمانشاه</option><option value="کهکیلویه و بویراحمد">کهکیلویه و بویراحمد</option><option value="گلستان">گلستان</option><option value="گیلان">گیلان</option><option value="لرستان">لرستان</option><option value="مازندران">مازندران</option><option value="مرکزی">مرکزی</option><option value="مناطق آزاد تجاری">مناطق آزاد تجاری</option><option value="هرمزگان">هرمزگان</option><option value="همدان">همدان</option><option value="یزد">یزد</option><option value="آمریکا">آمریکا</option><option value="کانادا">کانادا</option><option value="آمریکای جنوبی">آمریکای جنوبی</option><option value="آمریکای مرکزی">آمریکای مرکزی</option><option value="انگلستان">انگلستان</option><option value="اروپا">اروپا</option><option value="آسیای جنوب شرقی">آسیای جنوب شرقی</option><option value="آسیای شرقی">آسیای شرقی</option><option value="آسیای غربی">آسیای غربی</option><option value="آسیای مرکزی">آسیای مرکزی</option><option value="آفریقا">آفریقا</option><option value="استرالیا">استرالیا</option></select>
    </div>

    <div class="form-group col-sm-9">
        <label for="custom_field_4">آدرس</label>
        <input class="form-control" maxlength="100" name="custom_field_4" type="text" id="custom_field_4">
    </div>


<div class="col-sm-8">
        <div id="diverrors">
                </div>
        <div id="divlmsg">
        </div>
        <div id="divalerts">
        </div>
</div>

<div class="col-sm-4">
    <button id="btnsavead" type="button" class="btn btn-primary btn-sm pull-left" onclick="postad('http://ipanel.{$general_siteurlw}/uruns/savead')" >
            <span class="glyphicon glyphicon-ok"></span>
                        ثبت آگهی

        </button>
    <img id="ajxsave" class="pull-left" src="http://ipanel.{$general_siteurlw}/themes/default/images/ajax-loader.gif" style="display:none;" >
</div>

</form>

我的php代码是

<?php
echo $_POST['sitetitle'];
?>

提交表单后必须执行PHP代码,但这不会发生。代码问题在哪里请帮忙

0 个答案:

没有答案
相关问题