更新sql代码不修改数据

时间:2016-09-18 14:33:59

标签: javascript php mysql

我有一个php代码,用于接受表单的POST ed值,然后使用sql UPDATE查询相应地更新数据库。

我还有另一个与此页面相关联的javascript文件,其功能是显示感谢/抱歉消息(如果有任何延迟回复,请等待消息)。

我面临两个问题:

  1. 更新sql查询,即使返回成功(根据信息消息成功),实际上并没有修改数据库中的数据。

  2. 当我在代码中插入var_dump($_POST);时,程序卡住了,页面显示了一个"请等待"信息。该程序停留在我的代码的console.error('Inside if loop!');部分。

  3. 您可以帮我识别代码中的错误吗?

    由于 AB

    PHP代码部分:

    <?php   
        require("database_files/database-connect.php");
    
        $data = filter_input_array(INPUT_POST, [
                        'id'      => FILTER_DEFAULT,
                        'name'    => FILTER_DEFAULT,
                        'email'   => FILTER_VALIDATE_EMAIL,
                        'mobile'  => FILTER_DEFAULT]);
    
        // var_dump($_POST);
    
        $update_sql = "UPDATE tbl_details SET name='".$_POST['name']."', email_id='".$_POST['email']."', mobile_number='".$_POST['mobile']."' WHERE id='".$_POST['id']."'";
    
        mysql_select_db('db_info');
        $update_val = mysql_query( $update_sql, $conn );
    
        if($update_val)
        {
            echo json_encode(array('result' => true, 'message' => 'Entered data successfully'));
        }
    
        else
        {
            die(json_encode(array('result' => false, 'message' => 'Could not enter data: ' . mysql_error())));      
        }
    
        mysql_close($conn);
    ?>
    

    Javascript代码:

    $(function () 
    {
        $('form').submit(function (e) 
        {                   
            e.preventDefault();
            // $('#please_wait').show();
            document.getElementById("thankyou_info").style.display = "none";
            document.getElementById("sorry_info").style.display = "none";
    
            $('#please_wait_info').show();
            console.error('Below Wait!');               
    
            if(e.target === document.getElementById("info-form"))
            {
                console.error('Inside if loop!');
                $.ajax(
                {
                    type:this.method,
                    url:this.action,
                    data: $(this).serialize(),
                    dataType: 'json',
                    timeout: 15000,    
                    success: function(response)
                    {
                        console.error('Inside success loop!');
                        console.log(response);                          
                        if(response.result == true) 
                        {
                            document.getElementById("thankyou_info").style.display = "inline";
                            document.getElementById("form_link").style.display = "inline";
                            $('#please_wait_info').hide();
                            document.getElementById("info-form").reset();
                        }
    
                        else 
                        {           
                            document.getElementById("thankyou_info").style.display = "none";
                            document.getElementById("sorry_info").style.display = "inline";
                            document.getElementById("form_link").style.display = "none";
                            alert(response.message);
                            $('#please_wait_info').hide();  
                        }
    
    
                    }
    
    
    
                });             
            }
    
    
        });
    });
    

0 个答案:

没有答案