ajax发布数据并点击运行php-sql查询
ajax to post data and run php sql query on click
我正在尝试获取它,这样当按下按钮时,它就可以运行PHP函数,而无需重新加载页面。
我有这个按钮:
<div class= "obutton feature2" data-id="<?php echo $bookID;?>">
<button>Reserve Book</button>
</div>
我想运行的:
<script>
$('button').click(function()
{
var book_id = $(this).parent().data('id'),
result = "Book #" + book_id + " has been reserved.";
$.post('reserbook.php', 'book_id');
$('.modal-box').text(result).fadeIn(700, function()
{
setTimeout(function()
{
$('.modal-box').fadeOut();
}, 2000);
});
});
</script>
PHP文件是reservebook.PHP:
<?php
session_start();
$conn = mysql_connect('localhost', 'root', '');
mysql_select_db('library', $conn);
if(isset($_POST['jqbookID']))
{
$bookID = $_POST['jqbookID'];
mysql_query("INSERT INTO borrowing (UserID, BookID, Returned) VALUES
('".$_SESSION['userID']."', '".$bookID."', '3')", $conn);
}
?>
js运行良好,使模式框淡出,然后显示传递给它的变量,我只是不知道如何让帖子正常工作。
我一直在努力寻找其他问题的答案,比如从jquery调用php函数?以及如何将jQuery变量传递给PHP变量?
我也不确定一开始是否需要调用ajax特定的脚本,因为现在我只有
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" ></script>
我的jquery。
这可能是一个非常简单的事情,一个新手的错误,所以我们感谢所有的帮助。
<script>
//called when button is clicked
$('button').click(function()
{
var book_id = $(this).parent().data('id'),
result = "Book #" + book_id + " has been reserved.";
//set parameter which you want to pass, url to be requested
$.ajax({ url: 'reserbook.php',
data: "book_id="+book_id,
type: 'post',
success: function(result) {
//after success it will be here and server have to send some data to be handled
alert(result);
$('.modal-box').text(result).fadeIn(700, function()
{
setTimeout(function()
{
$('.modal-box').fadeOut();
}, 2000);
});
}
});
});
</script>
您在reservebook.php
上发布了什么?book_id
是一个字符串。您应该将json或xml格式的数据发送到服务器,或者使用类似key1=value1&key2=value2
.$的查询。post是一个快捷函数,我认为最好使用$.ajax并指定类型属性POST
。
您必须向post函数添加一个参数才能在php 中获得postdata
{ jqbookID: book_id }
试试这个:
$('button').click(function()
{
var book_id = $(this).parent().data('id'),
result = "Book #" + book_id + " has been reserved.";
$.post('reservebook.php', { jqbookID: book_id }, function() {
$('.modal-box').text(result).fadeIn(700, function()
{
setTimeout(function()
{
$('.modal-box').fadeOut();
}, 2000);
});
});
});
相关文章:
- Javascript运行php文件,然后下载文件
- 使用JS在服务器上运行PHP脚本
- 当通过ajax发送到php/sql时,无法存储HTML
- 无法运行php代码,有角度路由问题
- 当使用答案运行PHP函数时,会弹出是/否警报
- 在从HTML表单提交时从javascript运行php
- 通过Wordpress中的jquery调用运行php文件
- 在JavaScript中运行php
- 在按钮'上运行PHP代码;s onclick事件,或者使用Ajax
- 使用JQuery运行php并刷新页面是不起作用的
- 当变量发生变化时运行PHP
- 没有显示带有Infobox PHP/SQL的Google Map API v3
- 通过JavaScript/jQuery运行PHP SQL Query以隐藏条目
- 如何在 NetBeans 中的 Java Web 应用程序项目中运行 php
- 如何在运行php脚本后保持弹出窗口打开
- 从Javascript运行PHP文件来检查在线用户:表示未登录的用户是
- 在不安装Zend优化器的情况下运行php文件
- 无法运行php函数来使用document.write更新db值
- ajax发布数据并点击运行php-sql查询
- 单击链接时运行 PHP SQL 查询命令