php中sql语句好像没有效果,求助

改了很多次,可是数据库里的表一直没变化。。。意图是想根据用于注册的表单,先判断这个用户名是否注册过,没注册过的话就插入到数据库的表中

你的代码逻辑有问题.

    在表单submit事件里设置window.event.returnValue=false阻止了表单提交事件(IE浏览器下)

    表单提交事件里直接把填写的用户名写入cookie了,这跟后端就没关系了

    以上两步执行过后,就跳转到了 登录后页面.html,服务器端根本没接收到表单提交

所以你的代码主要是前端问题。

1.一般在表单提交事件里做填写验证,比如用户名以及密码有没有填写,格式或长度对不对,有问题则显示提示信息并阻止表单提交。

2.如果表单检查没问题,有两种处理方法,一种是放行表单提交(在事件中return true以及window.event.returnValue=true),另一种是继续阻止表单提交,然后代码获取表单的数据,使用ajax提交页面,同事设置提交按钮状态为禁用,等获取到返回结果后根据返回的信息再作显示或跳转处理。

3.前端代码,如果没有经验,可以直接用jquery或其它封装好的框架做事件处理,这样可以兼容到常用的浏览器。

以下手打一部分前端处理代码的逻辑

<script>
function checkForm(form){
    if(!form.username.value){
        alert('请填写用户名');
        return false;
    }
    //...其它 验证
    
    //验证通过
    return true;
    
    //第二种处理方法,需要引入jquery
    $.ajax({
        url:$(form).attr('action'),
        type:$(form).attr('method'),
        data:$(form).serialize(),
        dataType:'JSON', //异步操作一般用json做数据交互
        success:function(json){
            alert(json.message);
            location.href=json.url;//在服务器端处理时根据处理结果返回要跳转的页面
        }
    })
}
</script>
<!-- form 的action表示接收表单数据的页面 -->
<!-- onsubmit事件中使用return可以把处理结果直接提交给事件,返回false则阻止事件,其它情况不阻止事件 -->
<form name="userform" action="submit.php" method="post" onsubmit="return checkForm(this)">
<!-- 中间的代码就不打了 -->
</form>

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-06-05
打印下$num 看下这个变量返回值 当为空时是否为0

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网