jquery发布,错误报告,序列化不起作用。尝试了其他一切

时间:2017-03-14 13:16:05

标签: javascript php jquery ajax

我正在尝试与php使用jquery ajax方法进行通信。

'ascii' codec can't encode character u'\u200e' in position 11141: ordinal not in range(128)

我的jquery

<form class="form-group" id="formm" action="check.php" method="post">
        <label for="">Testing</label><br>
        <input type="text" class="col-md-5" id="name" placeholder="" name="name"><br>
        <button type="button" name='button' id="button" class="btn  btn-default" type="submit">button</button>
        <p class="help-block" id="result">Help text here.</p>
      </form>

我的PHP代码

$(document).ready(function(){
      $("#button").click(function(){
        $.post("check.php", $( "#formm :input" ).serialize(), function(info) {
          $("#result").html(info);
        });
      });
    });
    $("#button").click(function(e){
      e.preventDefault();
    });

现在,js脚本正在与php通信但不是我想要的。  1.当我使用serialize()时,它会停止通信  2.当我不使用serialize()时,我的php代码会将我发送回去&#34;无法插入&#34;  3.我尝试使用php错误报告行,js不会再次进行通信。控制台上也没有错误。  有什么我想念的吗?

UPDATE:尝试仅序列化formm而不是输入元素,仍然无效。

2 个答案:

答案 0 :(得分:1)

首先,一些警告:

Little Bobby your script is at risk for SQL Injection Attacks. 了解preparedMySQLi语句。即使escaping the string也不安全! Don't believe it?

向您的查询添加错误检查,例如or die(mysqli_error($con))。或者您可以在当前的错误日志中找到问题。

我一直在寻找错误的错误。您的INSERT查询语法错误,您无法在WHERE查询中使用INSERT

INSERT INTO name WHERE name='$username'更改为INSERT INTO name_of_table (name_of_column) VALUES('$username')

答案 1 :(得分:0)

序列化表格而不是输入

$.post("check.php", $( "#formm" ).serialize(), function(info) {
      $("#result").html(info);
    });