不使用提交按钮更新数据库

时间:2013-03-04 17:33:56

标签: php database forms button

我想在没有表单提交的情况下发布输入值。 我有这个链接,其中声明了onClick()函数。

 <a href="javascript:void(0);" id = "graph" onClick="validation('graph','D');" >Link</a>

我在我的项目中受到限制,以避免使用FORM SUBMIT技术。我必须选择其他方式发布值并更新数据库。  做什么而不是Form Post ??

2 个答案:

答案 0 :(得分:0)

您需要使用AJAX来执行此操作。即使您可以在自动停用字段时对文本字段使用onblur()函数,也会调用JavaScript函数,您可以在其中放置代码来更新数据库。

$.ajax({
type: 'POST',
url: 'http://xyz.com/updatedb.php',
data: { 
    'foo': 'bar'
}
});

此代码将从表单中发送数据。

在updatedb.php文件中使用以下代码:

<?php
 $in = $_POST['foo'];
 $con = //connection string;
 $query = "insert into tablename values('$in')";
 $result = mysqli_query($con, $query)
   or die('Something is wrong in query chek it');
 ?>

答案 1 :(得分:0)

如果您严格地谈论表单,并且如果您可以使用javascript框架(例如jQuery),它会立即为您提供所需的所有AJAX功能:

请参阅http://api.jquery.com

您可以查看此问题: jQuery AJAX submit form

这为您提供了一种方法。您还可以改进代码,使其更易于访问,更少阻碍(这使得支持更容易,因为javascript将与您的HTML代码分开)。

 <button id = "graph" >my action</a>

并且在你的脑海中,在一个脚本元素中:

$(document).ready(function() {
    // the functions below are executes once the document is loaded
    $("#graph").click(function(){
        validation('graph','D');
    });

});

如果您不严格谈论表单,可以通过定义uri和handler来完成: http://www.domain.com/?r=my-action/arg1/arg2/arg3 ...

您可以在模型视图控制器框架中找到公共技术(我不知道您正在使用哪种服务器语言)。

注意:除了jQuery之外还有其他框架,但我已经习惯了 http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks