ajax表单输入数据库帖子

时间:2012-11-10 23:01:18

标签: php jquery ajax database forms

我正在努力工作几个小时,无法让它工作

我的ajax电话

 $('.button').click( function() {
         var mail = $("#mail_content").val();

         alert(mail);

        $.ajax({  
            type: "POST",  
            url: "process.php",  
            data: "mail="+ mail,  
            success: function(){  
                alert("success");  
            }  
        });
    });

我的process.php

<?php
//  echo "<pre>";
//  print_r($_POST);
//  echo "</pre>";

include 'config.php';
include 'lib.php';

$db = dbConnect();


$mail = quote_smart($_POST['mail']);

//insert, update, select, delete
$query = "INSERT INTO mail VALUES ('', '$mail')";
$result = insertQuery($query);


 dbClose($db);

echo "entry saved";

?>

我的表格

<div class="email">
            <div class="email_title">GET NOTIFIED FOR THE GRAND OPENING<br /> </div>
            <div id="contact_form">
              <form id="mail" name="mail" action="" method="post" enctype="multipart/form-data">
                <fieldset>
                  <label for="mail" id="email_label">YOUR EMAIL</label>
                  <input type="text" name="mail_content" id="mail_content" size="30" value="" class="text-input" />
                  <input type="submit" name="submit" class="button" id="submit_btn" value="SAVE" />
                </fieldset>
              </form>
            </div>
        </div>
我忽略了什么吗? 当我将process.php代码放在表单

中的操作时,它可以工作

2 个答案:

答案 0 :(得分:1)

我看到的第一件事是,您的.button是提交输入,因此当您点击它时,将提交表单,而不是ajax调用。

将其设为按钮

<input type="button" name="submit" class="button" id="submit_btn" value="SAVE" />

答案 1 :(得分:1)

只需更改您的ajax调用,如下所示......这也解决了使用enter问题提交的问题。

 $('#mail').submit( function() {
        var mail = $("#mail_content").val();
        alert(mail);
        $.ajax({  
            type: "POST",  
            url: "process.php",  
            data: "mail="+ mail,  
            success: function(){  
                alert("success");  
            }  
        });
        return false;
    });