我需要一个ajax函数的帮助
这是原始页面设置。 页面将包含带有此表单链接的表格
.... 链接 - 按钮1 - 按钮2 链接 - 按钮1 - 按钮2 链接 - 按钮1 - 按钮2 ...
其中button1用于隐藏行,而button2用于隐藏+向db中的该链接添加+ 1值。每个链接都有唯一的id,它将与button2一起使用,因此很容易定位它。 因此,访问者会单击连续按钮之一,行将隐藏,然后他移动到另一行....
数据库设置:
id - link - .... - nmbOFlikes
我的问题是我不懂Ajax,只有在点击每个按钮后才需要更新数据库的解决方案。
该页面不是静态的,它是由另一个从db中提取数据的函数构成的 这是简单的html页面版本,所以如果有人可以提供帮助......
所以这是没有功能的javascript
$(document).ready(function(){
$("button.live").click(function(){
$(this).parents('tr').hide();
alert('Link is hidden');
});
$("button.add").click(function(){
$(this).parents('tr').hide();
alert('This link is dead');
$.post("update_db.php", { id: button_id, increment: true },
function(data) {
alert("Link incremented");
});
}); });
这是表
<table width="500" border="0" cellspacing="0" cellpadding="3">
<tr>
<td><p>Link 1</p></td>
<td><button class="live">live</button></td>
<td><button class="add" id="1">add</button></td>
</tr>
<tr>
<td><p>Link 2</p></td>
<td><button class="live">live</button></td>
<td><button class="add" id="2">add</button></td>
</tr>
</table>
答案 0 :(得分:1)
您不会将值直接添加到数据库,您将首先将数据发布到脚本。我不完全清楚你想要完成什么,但是post函数可能看起来像:
$.post("update_database_with_ajax.php", { id: button_id, increment: true },
function(data) {
alert("Link incremented");
});
这是一个功能性的jsFiddle示例:Jquery POST Example
<强> update_data_With_ajax.php 强>
/** This is an example and should not be used 'as is' **/
if ( isset( $_REQUEST['increment'] ) {
// Connect to MySQL
$conn = mysql_connect("localhost", "root", "");
if (!$conn) {
die('Could not connect: ' . mysql_error());
}
// Fetch the values we posted using AJAX
$id = mysql_real_escape_string( $_REQUEST['id'] );
//Select your database
mysql_select_db("my_db", $conn);
//increment your number of clicks
mysql_query("UPDATE table_name SET nmbofclicks = nmbofclicks + 1 WHERE id = {$id}");
}
答案 1 :(得分:0)
简单使用jQuery.ajax:
$.ajax({
url: "serversite.php",
type: "POST",
data: {
// Object of data you will send to serversite.php
},
success: function() {
// everything went ok.
}
});